mirror of
https://gitee.com/TarsCloud/TarsCpp.git
synced 2024-12-22 22:16:38 +08:00
reserve makefile support
This commit is contained in:
parent
b2ca1d68c1
commit
d89067c3bb
62
servant/script/cmake_http_server.sh
Executable file
62
servant/script/cmake_http_server.sh
Executable file
@ -0,0 +1,62 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ $# -lt 3 ]
|
||||
then
|
||||
echo "<Usage: $0 App Server Servant>"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
APP=$1
|
||||
SERVER=$2
|
||||
SERVANT=$3
|
||||
|
||||
echo "APP:$APP, SERVER:$SERVER, SERVANT:$SERVANT"
|
||||
|
||||
if [ "$SERVER" == "$SERVANT" ]
|
||||
then
|
||||
echo "Error!(ServerName == ServantName)"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ ! -d $SERVER ]
|
||||
then
|
||||
echo "[mkdir: $SERVER]"
|
||||
mkdir -p $SERVER
|
||||
fi
|
||||
|
||||
echo "[create server: $APP.$SERVER ...]"
|
||||
|
||||
DEMO_PATH=/usr/local/tars/cpp/script/cmake_http_demo
|
||||
|
||||
#make cleanall -C $DEMO_PATH
|
||||
|
||||
cp -rf $DEMO_PATH/* $SERVER/
|
||||
|
||||
cd $SERVER/src
|
||||
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp CMakeLists.txt"
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
cat $FILE | sed "s/DemoServer/$SERVER/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
|
||||
cat $FILE | sed "s/DemoApp/$APP/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
|
||||
cat $FILE | sed "s/DemoServant/$SERVANT/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
done
|
||||
|
||||
mv DemoServer.h ${SERVER}.h
|
||||
mv DemoServer.cpp ${SERVER}.cpp
|
||||
mv DemoServantImp.h ${SERVANT}Imp.h
|
||||
mv DemoServantImp.cpp ${SERVANT}Imp.cpp
|
||||
|
||||
cd ..
|
||||
mkdir build; cd build
|
||||
cmake ..; make
|
||||
|
||||
#cd ../../
|
||||
|
||||
echo "[done.]"
|
63
servant/script/cmake_tars_server.sh
Executable file
63
servant/script/cmake_tars_server.sh
Executable file
@ -0,0 +1,63 @@
|
||||
#!/bin/sh
|
||||
|
||||
if [ $# -lt 3 ]
|
||||
then
|
||||
echo "<Usage: $0 App Server Servant>"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
APP=$1
|
||||
SERVER=$2
|
||||
SERVANT=$3
|
||||
|
||||
echo "APP:$APP, SERVER:$SERVER, SERVANT:$SERVANT"
|
||||
|
||||
if [ "$SERVER" == "$SERVANT" ]
|
||||
then
|
||||
echo "Error!(ServerName == ServantName)"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ ! -d $SERVER ]
|
||||
then
|
||||
echo "[mkdir: $SERVER]"
|
||||
mkdir -p $SERVER
|
||||
fi
|
||||
|
||||
echo "[create server: $APP.$SERVER ...]"
|
||||
|
||||
DEMO_PATH=/usr/local/tars/cpp/script/cmake_demo
|
||||
|
||||
#make cleanall -C $DEMO_PATH
|
||||
|
||||
cp -rf $DEMO_PATH/* $SERVER/
|
||||
|
||||
cd $SERVER/src
|
||||
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars CMakeLists.txt"
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
cat $FILE | sed "s/DemoServer/$SERVER/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
|
||||
cat $FILE | sed "s/DemoApp/$APP/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
|
||||
cat $FILE | sed "s/DemoServant/$SERVANT/g" > $FILE.tmp
|
||||
mv $FILE.tmp $FILE
|
||||
done
|
||||
|
||||
mv DemoServer.h ${SERVER}.h
|
||||
mv DemoServer.cpp ${SERVER}.cpp
|
||||
mv DemoServantImp.h ${SERVANT}Imp.h
|
||||
mv DemoServantImp.cpp ${SERVANT}Imp.cpp
|
||||
mv DemoServant.tars ${SERVANT}.tars
|
||||
|
||||
cd ..
|
||||
mkdir build; cd build
|
||||
cmake ..; make
|
||||
|
||||
#cd ../../
|
||||
|
||||
echo "[done.]"
|
@ -10,31 +10,27 @@ APP=$1
|
||||
SERVER=$2
|
||||
SERVANT=$3
|
||||
|
||||
echo "APP:$APP, SERVER:$SERVER, SERVANT:$SERVANT"
|
||||
|
||||
if [ "$SERVER" == "$SERVANT" ]
|
||||
then
|
||||
echo "Error!(ServerName == ServantName)"
|
||||
exit -1
|
||||
fi
|
||||
|
||||
if [ ! -d $SERVER ]
|
||||
if [ ! -d $APP/$SERVER ]
|
||||
then
|
||||
echo "[mkdir: $SERVER]"
|
||||
mkdir -p $SERVER
|
||||
echo "[mkdir: $APP/$SERVER]"
|
||||
mkdir -p $APP/$SERVER
|
||||
fi
|
||||
|
||||
echo "[create server: $APP.$SERVER ...]"
|
||||
|
||||
DEMO_PATH=/usr/local/tars/cpp/script/http_demo
|
||||
DEMO_PATH=/usr/local/tars/cpp/script/demo
|
||||
|
||||
#make cleanall -C $DEMO_PATH
|
||||
cp $DEMO_PATH/* $APP/$SERVER/
|
||||
|
||||
cp -rf $DEMO_PATH/* $SERVER/
|
||||
cd $APP/$SERVER/
|
||||
|
||||
cd $SERVER/src
|
||||
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp CMakeLists.txt"
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars makefile"
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
@ -48,15 +44,9 @@ do
|
||||
mv $FILE.tmp $FILE
|
||||
done
|
||||
|
||||
mv DemoServer.h ${SERVER}.h
|
||||
mv DemoServer.cpp ${SERVER}.cpp
|
||||
mv DemoServantImp.h ${SERVANT}Imp.h
|
||||
mv DemoServantImp.cpp ${SERVANT}Imp.cpp
|
||||
rename "DemoServer" "$SERVER" $SRC_FILE
|
||||
rename "DemoServant" "$SERVANT" $SRC_FILE
|
||||
|
||||
cd ..
|
||||
mkdir build; cd build
|
||||
cmake ..; make
|
||||
|
||||
#cd ../../
|
||||
cd ../../
|
||||
|
||||
echo "[done.]"
|
@ -32,9 +32,9 @@ DEMO_PATH=/usr/local/tars/cpp/script/demo
|
||||
|
||||
cp -rf $DEMO_PATH/* $SERVER/
|
||||
|
||||
cd $SERVER/src
|
||||
cd $SERVER
|
||||
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars CMakeLists.txt"
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars makefile"
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
@ -54,10 +54,6 @@ mv DemoServantImp.h ${SERVANT}Imp.h
|
||||
mv DemoServantImp.cpp ${SERVANT}Imp.cpp
|
||||
mv DemoServant.tars ${SERVANT}.tars
|
||||
|
||||
cd ..
|
||||
mkdir build; cd build
|
||||
cmake ..; make
|
||||
|
||||
#cd ../../
|
||||
make
|
||||
|
||||
echo "[done.]"
|
||||
|
10
servant/script/demo/DemoServant.tars
Normal file
10
servant/script/demo/DemoServant.tars
Normal file
@ -0,0 +1,10 @@
|
||||
|
||||
module DemoApp
|
||||
{
|
||||
|
||||
interface DemoServant
|
||||
{
|
||||
int test();
|
||||
};
|
||||
|
||||
};
|
19
servant/script/demo/DemoServantImp.cpp
Normal file
19
servant/script/demo/DemoServantImp.cpp
Normal file
@ -0,0 +1,19 @@
|
||||
#include "DemoServantImp.h"
|
||||
#include "servant/Application.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
//////////////////////////////////////////////////////
|
||||
void DemoServantImp::initialize()
|
||||
{
|
||||
//initialize servant here:
|
||||
//...
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////
|
||||
void DemoServantImp::destroy()
|
||||
{
|
||||
//destroy servant here:
|
||||
//...
|
||||
}
|
||||
|
35
servant/script/demo/DemoServantImp.h
Normal file
35
servant/script/demo/DemoServantImp.h
Normal file
@ -0,0 +1,35 @@
|
||||
#ifndef _DemoServantImp_H_
|
||||
#define _DemoServantImp_H_
|
||||
|
||||
#include "servant/Application.h"
|
||||
#include "DemoServant.h"
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
class DemoServantImp : public DemoApp::DemoServant
|
||||
{
|
||||
public:
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual ~DemoServantImp() {}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual void initialize();
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual void destroy();
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual int test(tars::TarsCurrentPtr current) { return 0;};
|
||||
};
|
||||
/////////////////////////////////////////////////////
|
||||
#endif
|
43
servant/script/demo/DemoServer.cpp
Normal file
43
servant/script/demo/DemoServer.cpp
Normal file
@ -0,0 +1,43 @@
|
||||
#include "DemoServer.h"
|
||||
#include "DemoServantImp.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
DemoServer g_app;
|
||||
|
||||
/////////////////////////////////////////////////////////////////
|
||||
void
|
||||
DemoServer::initialize()
|
||||
{
|
||||
//initialize application here:
|
||||
//...
|
||||
|
||||
addServant<DemoServantImp>(ServerConfig::Application + "." + ServerConfig::ServerName + ".DemoServantObj");
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
||||
void
|
||||
DemoServer::destroyApp()
|
||||
{
|
||||
//destroy application here:
|
||||
//...
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
||||
int
|
||||
main(int argc, char* argv[])
|
||||
{
|
||||
try
|
||||
{
|
||||
g_app.main(argc, argv);
|
||||
g_app.waitForShutdown();
|
||||
}
|
||||
catch (std::exception& e)
|
||||
{
|
||||
cerr << "std::exception:" << e.what() << std::endl;
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
cerr << "unknown exception." << std::endl;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
34
servant/script/demo/DemoServer.h
Normal file
34
servant/script/demo/DemoServer.h
Normal file
@ -0,0 +1,34 @@
|
||||
#ifndef _DemoServer_H_
|
||||
#define _DemoServer_H_
|
||||
|
||||
#include <iostream>
|
||||
#include "servant/Application.h"
|
||||
|
||||
using namespace tars;
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
class DemoServer : public Application
|
||||
{
|
||||
public:
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual ~DemoServer() {};
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual void initialize();
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual void destroyApp();
|
||||
};
|
||||
|
||||
extern DemoServer g_app;
|
||||
|
||||
////////////////////////////////////////////
|
||||
#endif
|
16
servant/script/demo/makefile
Normal file
16
servant/script/demo/makefile
Normal file
@ -0,0 +1,16 @@
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
APP := DemoApp
|
||||
TARGET := DemoServer
|
||||
CONFIG :=
|
||||
STRIP_FLAG:= N
|
||||
TARS2CPP_FLAG:=
|
||||
|
||||
INCLUDE +=
|
||||
LIB +=
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
include /usr/local/tars/cpp/makefile/makefile.tars
|
||||
|
||||
#-----------------------------------------------------------------------
|
44
servant/script/http_demo/DemoServantImp.cpp
Normal file
44
servant/script/http_demo/DemoServantImp.cpp
Normal file
@ -0,0 +1,44 @@
|
||||
#include "DemoServantImp.h"
|
||||
#include "servant/Application.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
//////////////////////////////////////////////////////
|
||||
void DemoServantImp::initialize()
|
||||
{
|
||||
//initialize servant here:
|
||||
//...
|
||||
}
|
||||
|
||||
//////////////////////////////////////////////////////
|
||||
void DemoServantImp::destroy()
|
||||
{
|
||||
//destroy servant here:
|
||||
//...
|
||||
}
|
||||
|
||||
int DemoServantImp::doRequest(TarsCurrentPtr current, vector<char> &buffer)
|
||||
{
|
||||
TC_HttpRequest req;
|
||||
TC_HttpResponse rsp;
|
||||
|
||||
// parse request header
|
||||
vector<char> v = current->getRequestBuffer();
|
||||
string sBuf;
|
||||
sBuf.assign(v.data(), v.size());
|
||||
req.decode(sBuf);
|
||||
|
||||
int ret = doRequest(req, rsp);
|
||||
|
||||
rsp.encode(buffer);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
int DemoServantImp::doRequest(const TC_HttpRequest &req, TC_HttpResponse &rsp)
|
||||
{
|
||||
string msg = "Hello Tars!";
|
||||
rsp.setContentType("text/html");
|
||||
rsp.setResponse(msg.c_str(), msg.size());
|
||||
return 0;
|
||||
}
|
37
servant/script/http_demo/DemoServantImp.h
Normal file
37
servant/script/http_demo/DemoServantImp.h
Normal file
@ -0,0 +1,37 @@
|
||||
#ifndef _DemoServantImp_H_
|
||||
#define _DemoServantImp_H_
|
||||
|
||||
#include "servant/Application.h"
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
*/
|
||||
class DemoServantImp : public Servant
|
||||
{
|
||||
public:
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual ~DemoServantImp() {}
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual void initialize();
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
virtual void destroy();
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
int doRequest(TarsCurrentPtr current, vector<char> &buffer);
|
||||
|
||||
private:
|
||||
int doRequest(const TC_HttpRequest &req, TC_HttpResponse &rsp);
|
||||
};
|
||||
/////////////////////////////////////////////////////
|
||||
#endif
|
44
servant/script/http_demo/DemoServer.cpp
Normal file
44
servant/script/http_demo/DemoServer.cpp
Normal file
@ -0,0 +1,44 @@
|
||||
#include "DemoServer.h"
|
||||
#include "DemoServantImp.h"
|
||||
|
||||
using namespace std;
|
||||
|
||||
DemoServer g_app;
|
||||
|
||||
/////////////////////////////////////////////////////////////////
|
||||
void
|
||||
DemoServer::initialize()
|
||||
{
|
||||
//initialize application here:
|
||||
//...
|
||||
|
||||
addServant<DemoServantImp>(ServerConfig::Application + "." + ServerConfig::ServerName + ".DemoServantObj");
|
||||
addServantProtocol(ServerConfig::Application + "." + ServerConfig::ServerName + ".DemoServantObj", &TC_NetWorkBuffer::parseHttp);
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
||||
void
|
||||
DemoServer::destroyApp()
|
||||
{
|
||||
//destroy application here:
|
||||
//...
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
||||
int
|
||||
main(int argc, char* argv[])
|
||||
{
|
||||
try
|
||||
{
|
||||
g_app.main(argc, argv);
|
||||
g_app.waitForShutdown();
|
||||
}
|
||||
catch (std::exception& e)
|
||||
{
|
||||
cerr << "std::exception:" << e.what() << std::endl;
|
||||
}
|
||||
catch (...)
|
||||
{
|
||||
cerr << "unknown exception." << std::endl;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
/////////////////////////////////////////////////////////////////
|
34
servant/script/http_demo/DemoServer.h
Normal file
34
servant/script/http_demo/DemoServer.h
Normal file
@ -0,0 +1,34 @@
|
||||
#ifndef _DemoServer_H_
|
||||
#define _DemoServer_H_
|
||||
|
||||
#include <iostream>
|
||||
#include "servant/Application.h"
|
||||
|
||||
using namespace tars;
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
class DemoServer : public Application
|
||||
{
|
||||
public:
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual ~DemoServer() {};
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual void initialize();
|
||||
|
||||
/**
|
||||
*
|
||||
**/
|
||||
virtual void destroyApp();
|
||||
};
|
||||
|
||||
extern DemoServer g_app;
|
||||
|
||||
////////////////////////////////////////////
|
||||
#endif
|
16
servant/script/http_demo/makefile
Normal file
16
servant/script/http_demo/makefile
Normal file
@ -0,0 +1,16 @@
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
APP := DemoApp
|
||||
TARGET := DemoServer
|
||||
CONFIG :=
|
||||
STRIP_FLAG:= N
|
||||
TARS2CPP_FLAG:=
|
||||
|
||||
INCLUDE +=
|
||||
LIB +=
|
||||
|
||||
#-----------------------------------------------------------------------
|
||||
|
||||
include /usr/local/tars/cpp/makefile/makefile.tars
|
||||
|
||||
#-----------------------------------------------------------------------
|
@ -26,16 +26,13 @@ fi
|
||||
|
||||
echo "[create server: $APP.$SERVER ...]"
|
||||
|
||||
DEMO_PATH=c:\\taf\\cpp\\script\\demo
|
||||
DEMO_PATH=c:/tars/cpp/script/cmake_demo
|
||||
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars makefile CMakeLists.txt"
|
||||
cp -rf $DEMO_PATH/* $APP/$SERVER
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
cp -rf $DEMO_PATH\\$FILE $APP\\$SERVER\\src
|
||||
done
|
||||
SRC_FILE="DemoServer.h DemoServer.cpp DemoServantImp.h DemoServantImp.cpp DemoServant.tars CMakeLists.txt ../CMakeLists.txt"
|
||||
|
||||
cd $APP\\$SERVER\\src
|
||||
cd $APP/$SERVER/src
|
||||
|
||||
for FILE in $SRC_FILE
|
||||
do
|
||||
@ -53,10 +50,9 @@ mv DemoServer.h ${SERVER}.h
|
||||
mv DemoServer.cpp ${SERVER}.cpp
|
||||
mv DemoServantImp.h ${SERVANT}Imp.h
|
||||
mv DemoServantImp.cpp ${SERVANT}Imp.cpp
|
||||
mv DemoServant.jce ${SERVANT}.jce
|
||||
mv DemoServant.tars ${SERVANT}.tars
|
||||
|
||||
cd ..\\build
|
||||
cmake ..\\src -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE=Debug
|
||||
cmake ..\\src -G "Visual Studio 14 2015 Win64" -DCMAKE_BUILD_TYPE=Release
|
||||
cmake .. -DCMAKE_BUILD_TYPE=Release
|
||||
|
||||
echo "[done.]"
|
||||
|
Loading…
Reference in New Issue
Block a user