--- imach/src/Makefile 2015/08/04 07:17:13 1.62 +++ imach/src/Makefile 2019/05/09 15:19:47 1.84 @@ -1,5 +1,13 @@ -VERSION=0.98q4 -COPYRIGHT=Copyright (C) 2002-2015 INED-EUROREVES-Institut de longevite-Japan Society for the Promotion of Science (Grant-in-Aid for Scientific Research 25293121) - Intel Software 2015 +#Version has to be set in ../CMakeLists.txt too. +#VERSION=0.98r6 +#VERSION=$(shell echo `grep IMACH_VERSION__ version.h | echo 'titi'`) +VERSION=$(shell echo `grep IMACH_VERSION__ version.h | awk 'BEGIN { FS = "[ \t\n\"]+" } { print $$3 }'`) +OSTYPE = $(shell echo $$OSTYPE) +# DRIVEG is for VirtualBox Windows 64bit +DRIVEG=f: +#DIRG is the corresponding build directory for Virtual Windows +DIRG=\imach\cvs\imach\build +COPYRIGHT=Copyright (C) 2002-2016 INED-EUROREVES-Institut de longevite-Japan Society for the Promotion of Science (Grant-in-Aid for Scientific Research 25293121) - Intel Software 2016-18 IMACHSETUPVERSION=icl # This is for Windows only #IMACHSETUPVERSION=mvc @@ -7,7 +15,8 @@ IMACHSETUPVERSION=icl # Linux # make _linux=1 imachopt # make _linux=1 imach -# cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -D CPACK_RPM_SPEC_INSTALL_POST="/bin/true" -G RPM +# make _linux=1 imachrpm +# cd to build/gnulinux ; cmake ../..; cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -D CPACK_RPM_SPEC_INSTALL_POST="/bin/true" -G RPM # make _linux32onosx=1 imachopt # make _linux64onosx=1 imachopt @@ -45,7 +54,21 @@ IMACHSETUPVERSION=icl #TESTFILE=$(HOME)/Documents/Recherches/REVES/carol/carol-june2014/educadlmwt24.imach #TESTFILE=$(HOME)/Documents/Recherches/REVES/Biaspar/biaspar-wopowell.imach #TESTFILE=$(HOME)/Documents/Recherches/REVES/Biaspar/rbiaspar-098p.imach -TESTFILE=$(HOME)/Documents/Recherches/REVES/Aaron/brouard/results/COVARAITE_94/rmypar24pis1cov1-age.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Aaron/brouard/results/COVARAITE_94/rmypar24pis1cov1-age.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Flavia/rADL0w_V1V2b.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Yao/rrtest3b.imach +#TESTFILE=$(HOME)//Documents/Recherches/REVES/Flavia/Flavia-nov-2015/rtest3c.imach +#TESTFILE=/mnt/tugault/Documents/Recherches/REVES/Yao/rhrs-yao-test-back.imach +#TESTFILE=/mnt/tugault/Documents/Recherches/REVES/Flavia/Flavia-nov-2015/rtest3bb.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Flavia/Flavia-nov-2015/rtest3bb.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/saito-12-feb-2016/rHRS_relig_import_M_NB.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Biaspar/biaspar-0.98r-powellf1f3linmnb-zeroes.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Yao/Yao-19-jan-2016/r2V4V3V5.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Yao/Yao-19-jan-2016/r2b4V4V3V5.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Yao/Yao-19-jan-2016/Vn1b.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Saito-PAA-2018/rrLvngArrgJapan-two-1b.imach +TESTFILE=$(HOME)/Documents/Recherches/HRS/RAND_HRS/imachb.imach +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Yao/Yao-19-jan-2016/rrrV4V3V5-suite6.imach #TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc-test-mac/adecode-1.142c.imach #TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc_test_magei4/radlc_often.imach #CC= gcc -v @@ -238,7 +261,7 @@ TMPSCRIPTIN=setup.iss.in APPLICATION=IMaCh APPNAME=$(APPLICATION)-$(VERSION) APPCOMPILATIONMODE=$(IMACHSETUPVERSION) -GNUPLOTVERSION=4.6 +GNUPLOTVERSION=5.1 LICENSE=Copying TMPSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-setup.exe TMPNOREGSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-noreg-setup.exe @@ -305,8 +328,10 @@ imachICL-build: imach.c #/GS /W3 /Gy /Zc:wchar_t /Zi /O2 /Fd"x64\Release\vc120.pdb" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_LIB" /D "_UNICODE" /D "UNICODE" /Qipo /Zc:forScope /Oi /MT /Fa"x64\Release\" /EHsc /nologo /Fo"x64\Release\" /Qprof-dir "x64\Release\" /Fp"x64\Release\IMaCh-icl-x64-0.98q2.pch" # /Users/nbrouard/Documents/imach/imach-gui/build/icl64/Release/imach.exe # both 32 and 64 executables should have been built on Windows with Intel compiler. -imachICL-setup: ../build/icl64/Release/IMaCh-$(VERSION).exe ../build/icl32/Release/IMaCh-$(VERSION).exe setup.iss mybuildicl64.bat mybuildicl32.bat + +imachICL-setup: ../build/icl64/Release/IMaCh-$(VERSION).exe ../build/icl32/Release/IMaCh-$(VERSION).exe setup.iss ../distributions/windows/mybuildicl64.bat ../distributions/windows/mybuildicl32.bat setup.iss pwd + touch setup.iss.in $(SETUPCOMP) /cc setup.iss $(CP) Output/$(TMPSETUPEXE) imachICL-setup @@ -321,26 +346,37 @@ imachICL64-noreg-setup: IMaCh-icl64-$(VE $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) $(CP) Output/$(TMPSETUPEXE) imachICL64-noreg-setup -../build/icl64/Release/IMaCh-$(VERSION).exe: imach.c mybuildicl64.bat +../build/icl64/Release/IMaCh-$(VERSION).exe: imach.c ../distributions/windows/mybuildicl64.bat rm -rf ../build/icl64 && mkdir ../build/icl64 - cp mybuildicl64.bat ../build/icl64/ + cp ../distributions/windows/mybuildicl64.bat ../build/icl64/ cd ../build/icl64 - VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \ - --username brouard --verbose --wait-exit --wait-stdout --wait-stderr -- "/c" "g:\imachcvs\NetBeans\imach\build\icl64\mybuildicl64.bat" "$(VERSION)" + VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\System32\cmd.exe" \ + --username brouard --verbose --wait-stdout --wait-stderr -- "C:\Windows\SysWOW64\cmd.exe" "/c" "$(DRIVEG)$(DIRG)\icl64\mybuildicl64.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)" + +# VBoxManage --nologo guestcontrol "Windows7-64" run --exe "c:\\windows\\system32\\ipconfig.exe" --username brouard --verbose --wait-stdout --wait-stderr -- "/all" +# VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\SysWOW64\cmd.exe" --username brouard --verbose --wait-stdout --wait-stderr -- "/c" "DIR" + +# VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\SysWOW64\cmd.exe" --username brouard --verbose --wait-stdout --wait-stderr -- "/c" "DIR" +# VBoxManage --nologo guestcontrol "Windows7-64" run --exe "c:\\windows\\system32\\ipconfig.exe" --username brouard --verbose --wait-stdout --wait-stderr -- "/all" +#VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\SysWOW64\cmd.exe" \ +# --username brouard --verbose --wait-stdout --wait-stderr -- "/c" "$(DRIVEG)$(DIRG)\icl64\mybuildicl64.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)" -../build/icl32/Release/IMaCh-$(VERSION).exe: imach.c mybuildicl32.bat +../build/icl32/Release/IMaCh-$(VERSION).exe: imach.c ../distributions/windows/mybuildicl32.bat rm -rf ../build/icl32 && mkdir -p ../build/icl32 - cp mybuildicl32.bat ../build/icl32/ + cp ../distributions/windows/mybuildicl32.bat ../build/icl32/ cd ../build/icl32 - VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \ - --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g:\imachcvs\NetBeans\imach\build\icl32\mybuildicl32.bat" "$(VERSION)" + VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\System32\cmd.exe" \ + --username brouard --verbose --wait-stdout -- "C:\Windows\SysWOW64\cmd.exe" "/c" "$(DRIVEG)$(DIRG)\icl32\mybuildicl32.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)" + +#VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\SysWOW64\cmd.exe" \ +# --username brouard --verbose --wait-stdout -- "/c" "$(DRIVEG)$(DIRG)\icl32\mybuildicl32.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)" ../build/vs32/Release/IMaCh-$(VERSION).exe: imach.c mybuildvs32.bat rm -rf ../build/vs32 && mkdir -p ../build/vs32 cp mybuildvs32.bat ../build/vs32/ cd ../build/vs32 - VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \ - --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g:\imach\imach-gui\build\vs32\mybuildvs32.bat" "$(VERSION)" + VBoxManage --nologo guestcontrol "Windows7-64" run --exe "C:\Windows\System32\cmd.exe" \ + --username brouard --verbose --wait-stdout -- "C:\Windows\SysWOW64\cmd.exe" "/c" "g:\imach\imach-gui\build\vs32\mybuildvs32.bat" "$(VERSION)" # C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K "g:\imach\imach-gui\build\icl32\mybuild.bat" #WORK --username brouard --verbose --wait-exit --wait-stdout -- "/c" "c:\users\brouard\mybuild.bat" # --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g: && cd \imach\imach-gui\build\icl32 && mybuild.bat" @@ -393,11 +429,154 @@ ifdef _macosx endif imach.o : imach.c - $(CC) $(CFLAGS) $(CROSSCOMPILATION) -c imach.c + $(CC) $(CFLAGS) $(CROSSCOMPILATION) -c $< +# $(CC) $(CFLAGS) $(CROSSCOMPILATION) -DDEBUGMEM -c $< # $(CC) $(CFLAGS) $(CROSSCOMPILATION) -DDEBUGBRENT -c imach.c +imach-0.98r: imach-0.98r.o + $(CC) $(LFLAGS) -o $@ $< +ifdef _macosx + $(DSYMUTIL) $@ +endif + +# Horrible no f3imach$(VERSION).app/Contents/Info.plist - cp -p IMaChPkgInfo.in imach$(VERSION).app/Contents/PkgInfo - cp -p IMaCh.icns imach$(VERSION).app/Contents/Resources/applet.icns - cp -r -p main.scpt.in imach$(VERSION).app/Contents/Resources/Scripts/main.scpt - cp IMaCH-ecrandemarrage.rsrc imach$(VERSION).app/Contents/Resources/applet.rsrc - cp ../html/doc/data1.txt imach$(VERSION).app/Contents/Resources/html - cp ../html/doc/biaspar.log imach$(VERSION).app/Contents/Resources/html - cp ../html/doc/biaspar.imach imach$(VERSION).app/Contents/Resources/html - rm -f imach$(VERSION).dmg - ./createdmg3.sh --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION) - mv imach$(VERSION).dmg Output/ -# ./create-dmg --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION).app +# $(CC) $(LFLAGSOPT) -o imach imachopt.o +# #hdiutil detach /Volumes/IMaCh\ $(VERSION) +# cp ../../distributions/osx/gnuplot_bin/gnuplot_2_6_5_OSX imach$(VERSION).app/Contents/Resources/bin/gnuplot;\ + +imachdmg : imachopt.o ../distributions/osx/create-dmg ../distributions/osx/createdmg4.sh ../distributions/osx/IMaChInfo.plist.in ../distributions/osx/IMaChPkgInfo.in ../distributions/osx/IMaCh.icns ../distributions/osx/TXT.rtf + pwd + (cd ../build && rm -r osx && mkdir osx && cd osx ;\ + pwd ;\ + cmake ../..;\ + cmake --build . ; \ + echo $(OSTYPE);\ + rm -rf imach$(VERSION).app;\ + mkdir -p imach$(VERSION).app;\ + mkdir -p imach$(VERSION).app/Contents;\ + mkdir -p imach$(VERSION).app/Contents/MacOS;\ + cp ../../distributions/osx/imach imach$(VERSION).app/Contents/MacOS;\ + mkdir -p imach$(VERSION).app/Contents/Resources;\ + mkdir -p imach$(VERSION).app/Contents/Resources/Scripts;\ + mkdir -p imach$(VERSION).app/Contents/Resources/bin;\ + mkdir -p imach$(VERSION).app/Contents/Resources/lib;\ + mkdir -p imach$(VERSION).app/Contents/Resources/doc;\ + cp IMaCh-$(VERSION) imach$(VERSION).app/Contents/Resources/bin/imach;\ + cp ../../distributions/osx/gnuplot_bin/bin/gnuplot imach$(VERSION).app/Contents/Resources/bin/gnuplot;\ + cp ../../distributions/osx/gnuplot_bin/lib/* imach$(VERSION).app/Contents/Resources/lib;\ + mkdir -p imach$(VERSION).app/Contents/Resources/description.rtfd;\ + cp -p ../../distributions/osx/TXT.rtf imach$(VERSION).app/Contents/Resources/description.rtfd ;\ + $(SED) -e "s/@VERSION@/$(VERSION)/g;" ../../distributions/osx/IMaChInfo.plist.in >imach$(VERSION).app/Contents/Info.plist ;\ + cp -p ../../distributions/osx/IMaChPkgInfo.in imach$(VERSION).app/Contents/PkgInfo ;\ + cp -p ../../distributions/osx/IMaCh.icns imach$(VERSION).app/Contents/Resources/IMaCh.icns ;\ + cp ../../html/doc/data1.txt imach$(VERSION).app/Contents/Resources/doc ;\ + cp ../../html/doc/biaspar.log imach$(VERSION).app/Contents/Resources/doc ;\ + cp ../../html/doc/biaspar.imach imach$(VERSION).app/Contents/Resources/doc ;\ + cp ../../src/README.txt imach$(VERSION).app/Contents/Resources/doc ;\ + rm -f imach$(VERSION).dmg ;\ + pwd ;\ + cp ../../distributions/osx/createdmg4.sh . ;\ + cp ../../distributions/osx/Background.png .;\ + pwd ;\ + ./createdmg4.sh --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION) ;\ + cp imach$(VERSION).dmg ../../src/Output/ ;) +# ./create-dmg --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION).app # ./createdmg2.sh --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION) md5: ls Output/* | xargs md5sum upload: - rsync -v Output/IMaCh-0.98q4-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download - rsync -v Output/imach0.98q4.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.98r4-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/IMaCh-0.99a3-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99a3.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/IMaCh-0.98r7-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.98r7.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r9-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r9.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download + rsync -v Output/imach-0.99r18-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download + rsync -v Output/imach0.99r18.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r12-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download # rsync -v Output/* brouard@henry.ined.fr:/home/euroreves/html/imach/Download imachcyg : imachcyg.o @@ -512,8 +732,19 @@ imach.exe : imachw32.o i386-mingw32-gcc -mwindows -o imach.exe -lm imachw32.o i386-mingw32-strip imach.exe +valgrindtoto: valgrindtoto.c + gcc -o valgrindtoto -DCROSS=0 -g valgrindtoto.c +valgrindtototest: valgrindtoto + valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ./valgrindtoto + valgrind-test : imach $(TESTFILE) valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ./imach $(TESTFILE) +# valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ./imach-0.98r-powellf1f3linmnb $(TESTFILE) +# gdb -ex=r --args myprogram arg1 arg2 +# gdb -batch -x /tmp/cmds --args executablename arg1 arg2 arg3 +# gdb -ex=r --args imachback /Users/nbrouard/Documents/Recherches/HRS/RAND_HRS/imachb.imach +btest: imachback $(TESTFILE) + gdb ./imachback $(TESTFILE) test: imach $(TESTFILE) gdb ./imach $(TESTFILE)