Skip to content

Commit

Permalink
update makefile
Browse files Browse the repository at this point in the history
  • Loading branch information
xsmart committed Mar 20, 2017
1 parent b88440b commit 9835a92
Show file tree
Hide file tree
Showing 7 changed files with 173 additions and 27 deletions.
39 changes: 19 additions & 20 deletions Makefile
@@ -1,6 +1,5 @@
$(eval version=$(shell grep "define VE_VERSION" include/config/confver.hpp | sed 's|.*VERSION "\(.*\)"|\1|g'))
REL=Rapidvms-$(version)-$(VE_OS)-$(VE_VER)-$(VE_ARCH)bit
RELC=RapidClient-$(version)-$(VE_OS)-$(VE_VER)-$(VE_ARCH)bit

ifeq ($(strip $(VE_CROSS_COMPILER)), )
subdirs=3rdparty xcmnlib velib veuilib vecvr client
Expand Down Expand Up @@ -30,6 +29,17 @@ else
cp -r ./output/macos/* ./output/$(VE_INSTALL_DIR)/
endif
linkprocess:
ifneq ($(strip $(VE_OS)), macos)
else
chmod +x ./maclink.sh
./maclink.sh
endif
cleanapp:
for d in $(appsubdirs); do (cd $$d; (if test -e "Makefile"; then $(MAKE) clean; fi;) ); done
clean:
for d in $(subdirs); do (cd $$d; (if test -e "Makefile"; then $(MAKE) clean; fi;) ); done
#rm -rf ./linux/*.so ./linux/bin ./linux/lib/ ./linux/share ./linux/ssl ./linux/include
Expand All @@ -49,7 +59,7 @@ disttest:
mv ./libve* libcmnlib.so libcover.so ./output/$(VE_INSTALL_DIR)/lib/
strip ./output/$(VE_INSTALL_DIR)/lib/*.so
rel:
rel: linkprocess
echo $(REL)
rm -rf ./$(REL)
mkdir -p ./output/$(VE_INSTALL_DIR)/translations;
Expand All @@ -65,6 +75,7 @@ endif
rm -rf ./$(REL)/lib/x86_64-linux-gnu
rm -rf ./$(REL)/examples
rm -rf ./$(REL)/doc
rm -rf ./$(REL)/lib64
rm -rf ./$(REL)/mkspecs
mv ./$(REL)/bin/openssl .
rm -rf ./$(REL)/bin/*
Expand All @@ -86,30 +97,18 @@ endif
ifeq ($(strip $(VE_OS)), macos)
$(VE_CROSS_COMPILER)strip ./$(REL)/RapidClient.app/Contents/MacOS/Rapid*
$(VE_CROSS_COMPILER)strip ./$(REL)/RapidStor.app/Contents/MacOS/Rapid*
install_name_tool -add_rpath @loader_path/../../../lib ./$(REL)/RapidClient.app/Contents/MacOS/RapidClient
install_name_tool -add_rpath @loader_path/../../../lib ./$(REL)/RapidStor.app/Contents/MacOS/RapidStor
cp -r ./output/$(VE_INSTALL_DIR)/plugins/* ./$(REL)/RapidClient.app/Contents/MacOS/
cp -r ./output/$(VE_INSTALL_DIR)/plugins/* ./$(REL)/RapidStor.app/Contents/MacOS/
#$(VE_CROSS_COMPILER)strip ./$(REL)/lib/libveuilib.dylib
#$(VE_CROSS_COMPILER)strip ./$(REL)/lib/*ve*.so
#$(VE_CROSS_COMPILER)strip ./$(REL)/lib/*cmn*.so
else
$(VE_CROSS_COMPILER)strip ./$(REL)/Rapid*
$(VE_CROSS_COMPILER)strip ./$(REL)/lib/*.so*
endif
#release client only for macos
relc:
ifeq ($(strip $(VE_OS)), macos)
mkdir -p ./$(RELC)/RapidClient.app;
cp -Rf ./output/$(VE_INSTALL_DIR)/RapidClient.app/ $(RELC)/RapidClient.app/;
cp -rf ./output/$(VE_INSTALL_DIR)/lib/*.* ./$(RELC)/RapidClient.app/Contents/MacOS/
$(VE_CROSS_COMPILER)strip ./$(RELC)/RapidClient.app/Contents/MacOS/Rapid*
#$(VE_CROSS_COMPILER)strip ./$(RELC)/lib/libveuilib.dylib
#$(VE_CROSS_COMPILER)strip ./$(RELC)/lib/*ve*.so
#$(VE_CROSS_COMPILER)strip ./$(RELC)/lib/*cmn*.so
rm -rf ./$(RELC)/RapidClient.app/Contents/MacOS/*.a
rm -rf ./$(RELC)/RapidClient.app/Contents/MacOS/pkgconfig
rm -rf ./$(RELC)/RapidClient.app/Contents/MacOS/*.dbg
rm -rf ./$(RELC)/RapidClient.app/Contents/MacOS/libSDL*
endif
echo "Create zip file"
#zip -r $(REL).zip $(REL)
tar zcvf $(REL).tar.gz $(REL)
150 changes: 150 additions & 0 deletions maclink.sh
@@ -0,0 +1,150 @@
#!/bin/sh
export ve_libavcodec=libavcodec.57.dylib
export ve_libavformat=libavformat.57.dylib
export ve_libavutil=libavutil.55.dylib
export ve_libavfilter=libavfilter.6.dylib
export ve_libswscale=libswscale.4.dylib
export ve_libswresample=libswresample.2.dylib

export ve_libPocoFoundation=libPocoFoundation.24.dylib
export ve_libPocoDataSQLite=libPocoDataSQLite.24.dylib
export ve_libPocoData=libPocoData.24.dylib
export ve_libPocoUtil=libPocoUtil.24.dylib
export ve_libPocoXML=libPocoXML.24.dylib
export ve_libPocoJSON=libPocoJSON.24.dylib

export ve_libcurl=libcurl.4.dylib

#Change RapidClient
cd $VE_PATH/output/$VE_INSTALL_DIR/RapidClient.app/Contents/MacOS

install_name_tool -add_rpath @loader_path/../../../lib RapidClient
install_name_tool -change libcmnlib.so @rpath/libcmnlib.so RapidClient

install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec RapidClient
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat RapidClient
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil RapidClient
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavfilter @rpath/$ve_libavfilter RapidClient
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale RapidClient
install_name_tool -change libvelib.so @rpath/libvelib.so RapidClient
install_name_tool -change libveuilib.dylib @rpath/libveuilib.dylib RapidClient


install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation RapidClient
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoDataSQLite @rpath/$ve_libPocoDataSQLite RapidClient
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData RapidClient
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoUtil @rpath/$ve_libPocoUtil RapidClient

#Change RapidStor
cd $VE_PATH/output/$VE_INSTALL_DIR/RapidStor.app/Contents/MacOS
install_name_tool -add_rpath @loader_path/../../../lib RapidStor
install_name_tool -change libcmnlib.so @rpath/libcmnlib.so RapidStor
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec RapidStor
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat RapidStor
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil RapidStor
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavfilter @rpath/$ve_libavfilter RapidStor
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale RapidStor
install_name_tool -change libvelib.so @rpath/libvelib.so RapidStor
install_name_tool -change libveuilib.dylib @rpath/libveuilib.dylib RapidStor


install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation RapidStor
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoDataSQLite @rpath/$ve_libPocoDataSQLite RapidStor
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData RapidStor
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoUtil @rpath/$ve_libPocoUtil RapidStor

#Change Lib
cd $VE_PATH/output/$VE_INSTALL_DIR/lib

#libcmnlib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec libcmnlib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat libcmnlib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil libcmnlib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavfilter @rpath/$ve_libavfilter libcmnlib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale libcmnlib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation libcmnlib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoDataSQLite @rpath/$ve_libPocoDataSQLite libcmnlib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData libcmnlib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoUtil @rpath/$ve_libPocoUtil libcmnlib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/libPocoNet.24.dylib @rpath/libPocoNet.24.dylib libcmnlib.so


#libvelib.so
install_name_tool -change libcmnlib.so @rpath/libcmnlib.so libvelib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec libvelib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat libvelib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil libvelib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavfilter @rpath/$ve_libavfilter libvelib.so
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale libvelib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation libvelib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoDataSQLite @rpath/$ve_libPocoDataSQLite libvelib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData libvelib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoUtil @rpath/$ve_libPocoUtil libvelib.so
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/libPocoNet.24.dylib @rpath/libPocoNet.24.dylib libvelib.so

#$ve_libcurl
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR/lib/$ve_libcurl @rpath/$ve_libcurl libvelib.so

#libveuilib.dylib
install_name_tool -change libcmnlib.so @rpath/libcmnlib.so libveuilib.dylib
install_name_tool -change libvelib.so @rpath/libvelib.so libveuilib.dylib
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec libveuilib.dylib
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat libveuilib.dylib
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil libveuilib.dylib
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavfilter @rpath/$ve_libavfilter libveuilib.dylib
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale libveuilib.dylib

install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoDataSQLite @rpath/$ve_libPocoDataSQLite libveuilib.dylib
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData libveuilib.dylib
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation libveuilib.dylib
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoUtil @rpath/$ve_libPocoUtil libveuilib.dylib
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/libPocoNet.24.dylib @rpath/libPocoNet.24.dylib libveuilib.dylib


#$ve_libPocoDataSQLite
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoData @rpath/$ve_libPocoData $ve_libPocoDataSQLite
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation $ve_libPocoDataSQLite

#$ve_libPocoData
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation $ve_libPocoData

#libPocoNet.24.dylib
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation libPocoNet.24.dylib

#$ve_libPocoUtil
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation $ve_libPocoUtil
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoXML @rpath/$ve_libPocoXML $ve_libPocoUtil
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoJSON @rpath/$ve_libPocoJSON $ve_libPocoUtil

#$ve_libPocoXML
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation $ve_libPocoXML

#$ve_libPocoJSON
install_name_tool -change $VE_PATH/3rdparty/poco/lib/Darwin/x86_64/$ve_libPocoFoundation @rpath/$ve_libPocoFoundation $ve_libPocoJSON


#$ve_libavfilter
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec $ve_libavfilter
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswscale @rpath/$ve_libswscale $ve_libavfilter
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavformat @rpath/$ve_libavformat $ve_libavfilter
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil $ve_libavfilter
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswresample @rpath/$ve_libswresample $ve_libavfilter

#$ve_libswscale
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil $ve_libswscale

#$ve_libavformat
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavcodec @rpath/$ve_libavcodec $ve_libavformat
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswresample @rpath/$ve_libswresample $ve_libavformat
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil $ve_libavformat

#$ve_libavcodec
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswresample @rpath/$ve_libswresample $ve_libavcodec
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil $ve_libavcodec

#$ve_libavutil
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libswresample @rpath/$ve_libswresample $ve_libavutil

#$ve_libswresample
install_name_tool -change $VE_PATH/output/$VE_INSTALL_DIR//lib/$ve_libavutil @rpath/$ve_libavutil $ve_libswresample

1 change: 1 addition & 0 deletions relwin32.bat
Expand Up @@ -9,6 +9,7 @@ xcopy /y /e vecvr\prj_win32\Win32\Release Rapidvms-%VE_VER%-win32-%VE_VER_PHASE

REM cooy service file
xcopy /y /e output\windows\nssm\win32\nssm.exe Rapidvms-%VE_VER%-win32-%VE_VER_PHASE%
xcopy /y output\windows\gencertificate.bat Rapidvms-%VE_VER%-win32-%VE_VER_PHASE%
xcopy /y output\windows\regservice.bat Rapidvms-%VE_VER%-win32-%VE_VER_PHASE%
xcopy /y output\windows\unregservice.bat Rapidvms-%VE_VER%-win32-%VE_VER_PHASE%

Expand Down
1 change: 1 addition & 0 deletions relwin64.bat
Expand Up @@ -8,6 +8,7 @@ xcopy /y /e vecvr\prj_win32\x64\Release Rapidvms-%VE_VER%-win64-%VE_VER_PHASE%

REM cooy service file
xcopy /y /e output\windows\nssm\win64\nssm.exe Rapidvms-%VE_VER%-win64-%VE_VER_PHASE%
xcopy /y output\windows\gencertificate.bat Rapidvms-%VE_VER%-win64-%VE_VER_PHASE%
xcopy /y output\windows\regservice.bat Rapidvms-%VE_VER%-win64-%VE_VER_PHASE%
xcopy /y output\windows\unregservice.bat Rapidvms-%VE_VER%-win64-%VE_VER_PHASE%

Expand Down
2 changes: 1 addition & 1 deletion rules-macos.mk
Expand Up @@ -4,7 +4,7 @@ export VE_OS=macos
export VE_ARCH=`uname -m | sed 's/x86_//;s/i[3-6]86/32/'`
export VE_VER=10.12
export VE_CROSS_COMPILER=
export VE_INSTALL_DIR=$VE_OS-$VE_ARCH"bit"
export VE_INSTALL_DIR=$VE_OS-$VE_VER-$VE_ARCH"bit"
export LD_LIBRARY_PATH=$VE_PATH/output/$VE_INSTALL_DIR/lib/:$LD_LIBRARY_PATH
export PATH=$VE_PATH/output/$VE_INSTALL_DIR"/bin:"$PATH

Expand Down
2 changes: 1 addition & 1 deletion rules.mk
@@ -1,4 +1,4 @@
export VE_PATH=/home/user/opencvr/
export VE_PATH=/home/user/rapidvms/trunk

export VE_OS=`lsb_release -si`
export VE_ARCH=`uname -m | sed 's/x86_//;s/i[3-6]86/32/'`
Expand Down
5 changes: 0 additions & 5 deletions veuilib/Makefile
Expand Up @@ -36,11 +36,6 @@ LIBS=libveuilib

veuilib_build:
$(MAKE) -C ./onvifcpplib;
ifneq ($(strip $(VE_OS)), macos)#macos do not build the server
ifeq ($(strip $(PRJ_CROSS)), )
$(MAKE) -C ./rtspserver;
endif
endif
ifeq ($(strip $(PRJ_CROSS)), )
cd ./prj_linux/ ; qmake .;
else
Expand Down

0 comments on commit 9835a92

Please sign in to comment.