package: go4-package packages: go4-package fit-package thrd-package task-package GO4PACK_VERS = go4-$(MAJOR).$(MINOR) GO4TAR_NAME = go4-$(MAJOR).$(MINOR).tar WINBIN_NAME = go4-win-$(MAJOR).$(MINOR).zip WINZIP_CMD = 7z a $(WINBIN_NAME) FITTAR_NAME = Go4Fit.tar QTROOTTAR_NAME = Go4QtRoot.tar THRDTAR_NAME = threadmgr.tar TASKTAR_NAME = taskhandler.tar DISTR_DIR = ~/go4_temp_packaging GO4DISTR_DIR = $(DISTR_DIR)/$(GO4PACK_VERS) WINDISTR_DIR = $(DISTR_DIR)/$(WINPACK_VERS) PACKAGE_DIR = ./packages HDISTFILES = $(filter %.h %.cxx %.cpp %.c,$(DISTRFILES:%=$(GO4DISTR_DIR)/%)) go4-package: @echo "Creating package $(GO4TAR_NAME) ..." @tar chf $(GO4TAR_NAME) Makefile Makefile.config Makefile.rules CMakeLists.txt @tar rhf $(GO4TAR_NAME) build/go4-config.ini build/*.sh build/Makefile.* --exclude=build/Makefile.gener --exclude=build/Makefile.packaging @tar rhf $(GO4TAR_NAME) $(patsubst %,%/Module.mk,$(MODULES)) @tar rhf $(GO4TAR_NAME) $(patsubst %,%/CMakeLists.txt,$(MODULES)) @tar rhf $(GO4TAR_NAME) $(patsubst %,%/Makefile,$(EXMODULES)) @tar rhf $(GO4TAR_NAME) $(patsubst %,%/CMakeLists.txt,$(EXMODULES)) @tar rhf $(GO4TAR_NAME) $(DISTRFILES) @tar rhf $(GO4TAR_NAME) README.md CHANGES.txt Go4License.txt @tar rhf $(GO4TAR_NAME) etc --exclude=*.svn @tar rhf $(GO4TAR_NAME) cmake --exclude=*.svn @tar rhf $(GO4TAR_NAME) docs/*.pdf @tar rhf $(GO4TAR_NAME) docs/go4doxygenconfig @tar rhf $(GO4TAR_NAME) macros/*.C @tar rhf $(GO4TAR_NAME) icons --exclude=*.svn @tar rhf $(GO4TAR_NAME) html --exclude=*.svn @tar rhf $(GO4TAR_NAME) html5 --exclude=*.svn @tar rhf $(GO4TAR_NAME) python --exclude=*.svn --exclude=*.pyc @tar rhf $(GO4TAR_NAME) data --exclude=*.svn @mkdir -p $(DISTR_DIR); cd $(DISTR_DIR); mkdir -p $(GO4PACK_VERS) @mv $(GO4TAR_NAME) $(GO4DISTR_DIR) @cd $(GO4DISTR_DIR); tar xf $(GO4TAR_NAME); rm -f $(GO4TAR_NAME) @mkdir -p $(GO4DISTR_DIR)/include @touch -f $(GO4DISTR_DIR)/include/.dummy @cd $(DISTR_DIR); chmod u+w --recursive $(GO4PACK_VERS); chmod go+rX --recursive $(GO4PACK_VERS); tar chf $(GO4TAR_NAME) $(GO4PACK_VERS) ; gzip -f $(GO4TAR_NAME) @mkdir -p $(PACKAGE_DIR) @mv -f $(DISTR_DIR)/$(GO4TAR_NAME).gz $(PACKAGE_DIR) @rm -f -r $(DISTR_DIR)/* @rmdir $(DISTR_DIR) @echo "Package $(GO4TAR_NAME).gz done in $(PACKAGE_DIR)" win-bin: @echo "Creating binary Go4 Windows package ..." rm -f ../$(WINBIN_NAME) cp -f etc/win32/go4init.bat .. cp -f etc/win32/go4.bat .. cp -f etc/win32/go4login .. cp -f etc/win32/README.md .. cp -f etc/win32/Makefile.gener build/ ifneq ($(wildcard /cygdrive/c/WINDOWS/system32/msvcr100.dll),) cp -f /cygdrive/c/WINDOWS/system32/msvcr100.dll /cygdrive/c/WINDOWS/system32/msvcp100.dll bin endif cp -f $(QTDIR)/bin/Qt5Core.dll $(QTDIR)/bin/Qt5Gui.dll $(QTDIR)/bin/Qt5Widgets.dll $(QTDIR)/bin/Qt5Network.dll $(QTDIR)/bin/icu*53.dll bin @mkdir -p bin/platforms cp -f $(QTDIR)/plugins/platforms/*.dll bin/platforms @cd ..; $(WINZIP_CMD) go4/Makefile.config go4/Makefile.rules @for MMM in $(EXMODULES); do echo "pack $$MMM"; rm -f $$MMM/G__*.* $$MMM/*.obj $$MMM/*.d; cd ..; $(WINZIP_CMD) go4/$$MMM/*; cd go4; done cd ..; $(WINZIP_CMD) \ go4init.bat go4.bat go4login README.md go4/README.md go4/Go4License.txt \ go4/include/*.h go4/build/* go4/icons/* \ go4/etc/go4.prefs go4/bin/* go4/lib/* go4/docs/* go4/macros/* go4/html/* go4/html5/* \ go4/qt4/Go4UserGUI/libGo4UserGui.* go4/qt4/Go4UserGUI/*.pro go4/qt4/Go4UserGUI/QUserPanel.* go4/qt4/Go4UserGUI/Makefile go4/qt4/Go4UserGUI/README.md cd ..; $(WINZIP_CMD) root -r rm -f ../go4init.bat ../go4.bat ../go4login ../README.md rm -rf bin/Qt5Core.dll bin/Qt5Gui.dll bin/Qt5Widgets.dll bin/Qt5Network.dll bin/icu*53.dll bin/platforms bin/msvcr100.dll bin/msvcp100.dll build/Makefile.gener @echo "Binary package $(WINBIN_NAME) done" COMPFILES = $(filter %.h %.cxx %.cpp %.c, $(DISTRFILES)) compress: @for FILENAME in $(COMPFILES); do . distr/compress.sh $$FILENAME; done @echo "Compression done" FITHDISTFILES = $(filter %.h %.cxx %.cpp %.c, $(FITDISTRFILES:%=$(DISTR_DIR)/%) $(FITEXDISTRFILES:%=$(DISTR_DIR)/%)) fit-package: @echo "Creating package $(FITTAR_NAME) ..." @tar chf $(FITTAR_NAME) Go4Fit/changes.txt @tar rhf $(FITTAR_NAME) Go4Fit/init_script.sh @tar rhf $(FITTAR_NAME) $(FITDISTRFILES) @tar rhf $(FITTAR_NAME) $(FITEXDISTRFILES) @mkdir -p $(DISTR_DIR) @mv $(FITTAR_NAME) $(DISTR_DIR) @cd $(DISTR_DIR); tar xf $(FITTAR_NAME) @cp -f Go4Fit/Makefile.standalone $(DISTR_DIR)/Go4Fit/Makefile @cp -f Go4FitExample/Makefile.standalone $(DISTR_DIR)/Go4FitExample/Makefile @cd $(DISTR_DIR); rm -f $(FITTAR_NAME); chmod u+w --recursive *; chmod go+rX --recursive *; tar chf $(FITTAR_NAME) Go4Fit Go4FitExample; gzip -f $(FITTAR_NAME) @mkdir -p $(PACKAGE_DIR) @mv -f $(DISTR_DIR)/$(FITTAR_NAME).gz $(PACKAGE_DIR) @rm -f -r $(DISTR_DIR)/* @rmdir $(DISTR_DIR) @echo "Package $(FITTAR_NAME).gz done in $(PACKAGE_DIR)" THRDMODULES = Go4Exceptions Go4LockGuard Go4Log Go4ThreadManager Go4Dict THRDMODULESEX = Go4ThreadManagerExample THRDDISTRFILES = $(EXCEPT_DISTRFILES) $(LOCKGRD_DISTRFILES) $(GO4LOG_DISTRFILES) \ $(THRDMNGR_DISTRFILES) $(THREADMGR_DICT) $(THREADMGR_DICT_DISTR) thrd-package: @echo "Creating package $(THRDTAR_NAME) ..." @tar chf $(THRDTAR_NAME) Makefile.config @tar rhf $(THRDTAR_NAME) Makefile.rules @tar rhf $(THRDTAR_NAME) build/go4-config.ini build/*.sh build/Makefile.* --exclude=build/Makefile.gener --exclude=build/Makefile.packaging @tar rhf $(THRDTAR_NAME) $(patsubst %,%/Module.mk,$(THRDMODULES)) @tar rhf $(THRDTAR_NAME) $(patsubst %,%/Makefile,$(THRDMODULESEX)) @tar rhf $(THRDTAR_NAME) $(THRDDISTRFILES) @tar rhf $(THRDTAR_NAME) Go4License.txt @tar rhf $(THRDTAR_NAME) etc/Go4ClientStartup.sh @mkdir -p $(DISTR_DIR) @mv $(THRDTAR_NAME) $(DISTR_DIR) @cd $(DISTR_DIR); tar xf $(THRDTAR_NAME) @mkdir -p $(DISTR_DIR)/include @touch -f $(DISTR_DIR)/include/.dummy @cp -f etc/thrdmgr/Makefile $(DISTR_DIR) @cp -f etc/thrdmgr/thrdmgr.init $(DISTR_DIR)/go4.init @cp -f etc/thrdmgr/README.md $(DISTR_DIR) @cd $(DISTR_DIR); rm -f $(THRDTAR_NAME); chmod u+w --recursive *; chmod go+rX --recursive *; tar chf $(THRDTAR_NAME) . --exclude=$(THRDTAR_NAME)*; gzip -f $(THRDTAR_NAME) @mkdir -p $(PACKAGE_DIR) @mv -f $(DISTR_DIR)/$(THRDTAR_NAME).gz $(PACKAGE_DIR) @rm -f -r $(DISTR_DIR)/* @rmdir $(DISTR_DIR) @echo "Package $(THRDTAR_NAME).gz done in $(PACKAGE_DIR)" TASKMODULES = Go4Exceptions Go4LockGuard Go4Log \ Go4ThreadManager \ Go4Queue Go4Socket Go4StatusBase \ Go4CommandsBase Go4CommandsTaskHandler \ Go4TaskHandler Go4Dict TASKMODULESEX = Go4ThreadManagerExample Go4TaskHandlerExample TASKDISTRFILES = $(EXCEPT_DISTRFILES) $(LOCKGRD_DISTRFILES) $(GO4LOG_DISTRFILES) \ $(THRDMNGR_DISTRFILES) $(THRDMNGREXAMP_DISTRFILES) \ $(GO4QUEUE_DISTRFILES) $(GO4SOCKET_DISTRFILES) $(STATBASE_DISTRFILES) \ $(COMBASE_DISTRFILES) $(CMDTASKHANDL_DISTRFILES) \ $(TASKHANLER_DICT_DISTR) \ $(TASKHAND_DISTRFILES) $(TASKHANDEXAMP_DISTRFILES) task-package: @echo "Creating package $(TASKTAR_NAME) ..." @tar chf $(TASKTAR_NAME) Makefile.config @tar rhf $(TASKTAR_NAME) Makefile.rules @tar rhf $(TASKTAR_NAME) build/go4-config.ini build/*.sh build/Makefile.* --exclude=build/Makefile.gener --exclude=build/Makefile.packaging @tar rhf $(TASKTAR_NAME) $(patsubst %,%/Module.mk,$(TASKMODULES)) @tar rhf $(TASKTAR_NAME) $(patsubst %,%/Makefile,$(TASKMODULESEX)) @tar rhf $(TASKTAR_NAME) $(TASKDISTRFILES) @tar rhf $(TASKTAR_NAME) ./Go4License.txt @tar rhf $(TASKTAR_NAME) ./etc/Go4ClientStartup.sh @mkdir -p $(DISTR_DIR) @mv $(TASKTAR_NAME) $(DISTR_DIR) @cd $(DISTR_DIR); tar xf $(TASKTAR_NAME) @cp -f etc/taskh/Makefile $(DISTR_DIR) @cp -f etc/taskh/taskh.init $(DISTR_DIR)/go4.init @cp -f etc/taskh/README.md $(DISTR_DIR) @mkdir -p $(DISTR_DIR)/include @touch -f $(DISTR_DIR)/include/.dummy @cd $(DISTR_DIR); rm -f $(TASKTAR_NAME); chmod u+w --recursive *; chmod go+rX --recursive *; tar chf $(TASKTAR_NAME) . --exclude=$(TASKTAR_NAME)*; gzip -f $(TASKTAR_NAME) @mkdir -p $(PACKAGE_DIR) @mv -f $(DISTR_DIR)/$(TASKTAR_NAME).gz $(PACKAGE_DIR) @rm -f -r $(DISTR_DIR)/* @rmdir $(DISTR_DIR) @echo "Package $(TASKTAR_NAME).gz done in $(PACKAGE_DIR)"