cmake_http_server.sh 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/bin/bash
  2. if [ $# -lt 3 ]
  3. then
  4. echo "<Usage: $0 App Server Servant>"
  5. exit 0
  6. fi
  7. APP=$1
  8. SERVER=$2
  9. SERVANT=$3
  10. echo "APP:$APP, SERVER:$SERVER, SERVANT:$SERVANT"
  11. if [ "$SERVER" == "$SERVANT" ]
  12. then
  13. echo "Error!(ServerName == ServantName)"
  14. exit -1
  15. fi
  16. if [ ! -d $SERVER ]
  17. then
  18. echo "[mkdir: $SERVER]"
  19. mkdir -p $SERVER
  20. fi
  21. echo "[create server: $APP.$SERVER ...]"
  22. TARSPATH=$4
  23. if [ "$TARSPATH" == "" ]; then
  24. TARSPATH=/usr/local/tars
  25. fi
  26. DEMO_PATH=${TARSPATH}/cpp/script/cmake_http_demo
  27. #make cleanall -C $DEMO_PATH
  28. cp -rf $DEMO_PATH/* $SERVER/
  29. cd $SERVER/src
  30. SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp CMakeLists.txt"
  31. for FILE in $SRC_FILE
  32. do
  33. cat $FILE | sed "s/DemoServer/$SERVER/g" > $FILE.tmp
  34. mv $FILE.tmp $FILE
  35. cat $FILE | sed "s/DemoApp/$APP/g" > $FILE.tmp
  36. mv $FILE.tmp $FILE
  37. cat $FILE | sed "s/DemoServant/$SERVANT/g" > $FILE.tmp
  38. mv $FILE.tmp $FILE
  39. done
  40. mv DemoServer.h ${SERVER}.h
  41. mv DemoServer.cpp ${SERVER}.cpp
  42. mv DemoServantImp.h ${SERVANT}Imp.h
  43. mv DemoServantImp.cpp ${SERVANT}Imp.cpp
  44. cd ..
  45. mkdir build; cd build
  46. cmake ..
  47. cmake --build . --config Release
  48. #cd ../../
  49. echo "[done.]"