cmake_tars_server.sh 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  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. TARSPATH=$4
  12. if [ "$TARSPATH" == "" ]; then
  13. TARSPATH=/usr/local/tars/
  14. fi
  15. if [ "$SERVER" == "$SERVANT" ]
  16. then
  17. echo "Error!(ServerName == ServantName)"
  18. exit -1
  19. fi
  20. if [ ! -d $SERVER ]
  21. then
  22. echo "[mkdir: $SERVER]"
  23. mkdir -p $SERVER
  24. fi
  25. echo "[create server: $APP.$SERVER ...]"
  26. DEMO_PATH=${TARSPATH}/cpp/script/cmake_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 DemoServant.tars 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. mv DemoServant.tars ${SERVANT}.tars
  45. cd ..
  46. mkdir build; cd build
  47. cmake ..
  48. cmake --build . --config Release
  49. #cd ../../
  50. echo "[done.]"