--- imach/src/Makefile 2005/09/30 17:33:36 1.12 +++ imach/src/Makefile 2022/09/11 07:59:43 1.91 @@ -1,92 +1,834 @@ -#CC= gcc -v -CC= gcc - -LFLAGS= -g -lm -CFLAGS= -g - -#LFLAGS= -O3 -lm -#CFLAGS= -O3 - -#LFLAGS= -g -mno-cygwin -#CFLAGS= -g - -#LFLAGS= -O3 -mno-cygwin -#CFLAGS= -O3 -mno-cygwin - -SED= sed -PACKAGE=imach -PROGRAM=IMaCh -##ifdef DICTLANGUAGE - DICTNAME=$(PACKAGE) $(DICTLANGUAGE) Dictionary -##else -## ISERROR=1 -##endif - -##SETUPCOMP=start /wait "C:\Program\ Files\\Compil32.exe" - -#SETUPCOMP= echo -# Linux -#SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe" -##SETUPCOMP= "C:\Program Files\Inno Setup 4\Compil32.exe" -#Windows cygwin -# make imachcyg -# make imach-setupe.exe -# sortie dans Outpu/setup.exe -# ln -s /cygdrive/c/Program\ Files/Inno\ Setup\ 3/Compil32.exe /usr/local/bin/Compil32 -##SETUPCOMP= "C:\Program Files\Inno Setup 3\Compil32.exe" -SETUPCOMP= Compil32 -TMPSETUPSCRIPT=setup.iss -TMPSCRIPTIN=setup.iss.in -APPNAME=IMaCh -VERSION=0.98 -GNUPLOTVERSION=4.0 -IMACHSETUPVERSION=2 -LICENSE=Copying -COPYRIGHT=Copyright (C) 2002-2003-2004-2005 INED-EUROREVES-Institut de longévité -#TMPSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-setup.exe -TMPSETUPEXE=imach-setup.exe -LICENSEFILE=$(LICENSE) -INFOBEFOREFILE=Readme.txt - -$(TMPSETUPSCRIPT): - $(SED) -e "s/@APPNAME@/$(APPNAME)/g; \ - s/@VERSION@/$(VERSION)/g; \ - s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \ - s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \ - s/@LICENSEFILE@/$(LICENSEFILE)/g; \ - s/@PACKAGE@/$(PACKAGE)/g; \ - s/@DICTLANG@/$(DICTLANG)/g; \ - s/@VERMAJOR@/$(VERMAJOR)/g; \ - s/@COPYRIGHT@/$(COPYRIGHT)/g;" \ - $(TMPSCRIPTIN) > $(TMPSETUPSCRIPT) - -$(TMPSETUPEXE): - $(SETUPCOMP) /cc $(TMPSETUPSCRIPT) - -PARAM=mypar1 - -imach : imach.o - $(CC) $(LFLAGS) -o imach imach.o -imach.o : imach.c - $(CC) $(CFLAGS) -c imach.c - -imachcyg : imachcyg.o $(TMPSETUPSCRIPT) - $(CC) -mno-cygwin -o imach imachcyg.o -imachcyg.o : imach.c - $(CC) -mno-cygwin -c -o imachcyg.o imach.c - -imachw32.o : imach.c - i386-mingw32-gcc -c imach.c -o imachw32.o -imach.exe : imachw32.o - i386-mingw32-gcc -mwindows -o imach.exe -lm imachw32.o - i386-mingw32-strip imach.exe - -$(PARAM).htm: imach $(PARAM).txt data1.txt - ./imach $(PARAM).txt - -clean: - rm or$(PARAM).txt er$(PARAM).txt pijr$(PARAM).txt plr$(PARAM).txt \ - r$(PARAM).txt tr$(PARAM).txt vpl$(PARAM).txt pr$(PARAM).txt \ - vr$(PARAM).txt *.gif imach.exe imach.o - - +#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-2022 INED-EUROREVES-Institut de longevite-Japan Society for the Promotion of Science (Grant-in-Aid for Scientific Research 25293121) - Intel Software 2016-19 +IMACHSETUPVERSION=icl +# This is for Windows only +#IMACHSETUPVERSION=mvc + +# Linux +# make _linux=1 imachopt +# make _linux=1 imach +# 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 + +# OS/X +# make _macosx=1 imachdmg +# make _intel64onosx=1 imachopt +# make _intel32onosx=1 imachopt +# make _intelUNBonosx=1 imachdmg # Not implemented (not useful) +# make _macosx=1 imach +# make _macosx=1 imachopt +# valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ~/Documents/imachcvs/imach/src/imach-1.129cvsmac radlc-1.129.imach + +# Windows should be started on VirtualBox and both 32 and 64 commands should be made +# xlcem is year month delay, doing the command make on the username and not on root +# on emacs shell: +# sudo xlcem make _windowsonosx=1 imachICL64-setup +# ls -l ../build/icl64/Release/ +# sudo xlcem make _windowsonosx=1 imachICL32-setup +# ls -l ../build/icl32/Release/ +# and then F: should be mounted on ~/Documents +# For an unknown reason, the exe file on /Documents/imach/cvs/imach/build/icl64/Release~or icl32 are not recognized by make which deletes +# previous work and imachICL-set +# has to be done manually: SETUPCOMP=~/bin/InnoSetup5Playonmac +# and $SETUPCOMP /cc setup.iss +# or on Emacs make _windowsonosx=1 imachICL-set (and not imachICL-setup) +# sudo date -u 082109552022 +# make _windowsonosx=1 imachICL-setup (touch setup.iss.in) #binary should have been compiled on Windows with Intel +# make _windowsonosx=1 imachICL64-setup (touch setup.iss.in) #binary should have been compiled on Windows with Intel +# make _windowsonosx=1 imachICL32-setup (touch setup.iss.in) #binary should have been compiled on Windows with Intel +# make _windowsonosx=1 imachMVC-setup (touch setup.iss.in) #binary should have been compiled on Windows with cl +# make _windowsonosx=1 imachMVC-noreg-setup +# +# Windows cross-compiled mw64 +# make _mw64onsox=1 imachcyg-setup +# +# make _windows=1 imachcyg +# make _windows=1 imachcyg-setup (touch setup.iss.in) +# make _windows=1 imachcyg-noreg-setup +# +# make _windowsonlinux=1 imachcyg-setup (touch setup.iss.in) +# make _windowsonlinux=1 imachcyg-noreg-setup +# +# make _windowscl=1 imachclopt + +# +# sortie dans Output/setup.exe +# ln -s /cygdrive/c/Program\ Files/Inno\ Setup\ 4/Compil32.exe /usr/local/bin/Compil32 +##SETUPCOMP= "C:\Program Files\Inno Setup 3\Compil32.exe" +#TESTFILE=$$HOME/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc-test-mac/adecode-1.142c.imach +#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/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/HRS/RAND_HRS/imachb-r18.imach +TESTFILE=$(HOME)/Documents/Recherches/REVES/Zachary/Zach-2022/Feinuo_Sun/feinuo-pb2022/para3_testNB.imach +#TESTFILE=$(HOME)/home/brouard/Documents/Recherches/REVES/Zachary/Zach-2022/Feinuo_Sun/feinuo-pb2022/rrrpara3_testNB30b.imach +# Two testfiles which should give similar results with V1=1 whatever V2 and V3. +#TESTFILE=$(HOME)/Documents/Recherches/REVES/Zachary/Zach-2022/Feinuo_Sun/feinuo-pb2022/female_sample/para_femaleNBV2V3sexW0-ter.imach +TESTFILE=$(HOME)/Documents/Recherches/REVES/Zachary/Zach-2022/Feinuo_Sun/feinuo-pb2022/rrpara3_testNB30sexW0-ter.htm +#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 +CC=$(GCC) +CCOPT=$(GCCOPT) +GCC= gcc +GCCOPT= gcc + +ifdef _macosx +GCC= gcc-11 +GCCOPT= gcc +# Mac OS/X version +LFLAGS= -g -lm +#CFLAGS= -g -DDEBUG +CFLAGS= -g +LFLAGSOPT= -O3 -lm +CFLAGSOPT= -O3 +# LFLAGSOPT= -O2 -lm # seems to be less effective than O3 +# CFLAGSOPT= -O2 +CP= cp +CROSSCOMPILATION= -DCROSS=0 +UNIX2DOS= echo "Unix2dos " +DSYMUTIL= dsymutil +STRIP= strip +BINVERSION=OSX +# Don'know how to launch imach098.pmsp in batch to create package file imach098Panther.pkg +# ./createdmg.sh imach imach098panther ./imach098Panther +# ./createdmg.sh imach imach098leopard ./imach098Leopard +# and directory ./imach098Panther contains package file imach098Panther.pkg +#./create-dmg --window-size 500 300 --background ~/Projects/eclipse-osx-repackager/build/background.gif --icon-size 96 --volname "Hyper Foo" --icon "Applications" 380 205 --icon "Eclipse OS X Repackager" 110 205 test2.dmg /Users/andreyvit/Projects/eclipse-osx-repackager/temp/Eclipse\ OS\ X\ Repackager\ r10/ +# ./create-dmg --volname "IMaCh 0.98j" imach098j.dmg imach098Leopard +endif + +ifdef _windows +CC=c:\MinGW\bin\Mingw32-gcc + +# Windows cygwin version +LFLAGS= -g -mno-cygwin +CFLAGS= -g -mno-cygwin +LFLAGSOPT= -O3 -mno-cygwin +CFLAGSOPT= -O3 -mno-cygwin +UNIX2DOS= unix2dos +CP= copy +BINVERSION=CYGWIN +#SETUPCOMP= Compil32 +##SETUPCOMP=start /wait "C:\Program\ Files\\Compil32.exe" +# cygwin SETUPCOMP= "C:\Program Files\Inno Setup 4\Compil32.exe" +SETUPCOMP= "C:////Program Files////Inno Setup 4////Compil32.exe" +endif + +ifdef _windowsonlinux +GCC=/usr/bin/i586-pc-mingw32-gcc +LFLAGS= -g +CFLAGS= -g +LFLAGSOPT= -O3 -lm +CFLAGSOPT= -O3 +CROSSCOMPILATION= -DCROSS=1 +CP= cp +UNIX2DOS= unix2dos +SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe" +BINVERSION=WINDOWSonLINUX +endif + +ifdef _windowsonosx +#GCC=/usr/local/i386-mingw32-4.3.0/bin/i386-mingw32-gcc +#GCC=/usr/local/cross-tools/bin/i686-w64-mingw32-gcc +GCC=/usr/local/gcc-4.8.0-qt-4.8.4-for-mingw32/win32-gcc/bin/i586-mingw32-gcc-4.8.0 +STRIP=/usr/local/gcc-4.8.0-qt-4.8.4-for-mingw32/win32-gcc/bin/i586-mingw32-strip +LFLAGS= -g +CFLAGS= -g +LFLAGSOPT= -O3 -s +CFLAGSOPT= -O3 +CROSSCOMPILATION= -DCROSS=1 +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=WIN32onOSX +endif + +ifdef _mw64onosx +GCC=/usr/local/mingw-w64-bin_i686-darwin_20130622/bin/x86_64-w64-mingw32-gcc-4.9.0 +STRIP=/usr/local/mingw-w64-bin_i686-darwin_20130622/bin/x86_64-w64-mingw32-strip +LFLAGS= -g +CFLAGS= -g +LFLAGSOPT= -O3 -lm -s +CFLAGSOPT= -O3 +CROSSCOMPILATION= -DCROSS=1 +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=w64-mingw32-x86-64-bin +endif + +ifdef _windowscl +rem "C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvas32.bat" +endif + +# make _intel64onosx=1 imachopt +#source /opt/intel/bin/iccvars.sh intel64 +ifdef _intel64onosx +GCC=/opt/intel/bin/icc +CFLAGS= -m64 -g -std=c99 +LFLAGS= -g -m64 +#CFLAGSOPT= -O3 -m64 -g -std=c99 -no-prec-div idem +#CFLAGSOPT= -O3 -m64 -g -std=c99 -xSSSE3_ATOM 402 +CFLAGSOPT= -O3 -m64 -g -std=c99 +CROSSCOMPILATION= -DCROSS=0 +IGNORE :=$(shell bash -c "source /opt/intel/bin/iccvars.sh intel64; env | sed 's/=/:=/' | sed 's/^/export /' > makeenv") +include makeenv +#lipo -create -arch i386 HelloWorld_32 -arch x86_64 HelloWorld_64 -output HelloWorld +LFLAGSOPT= -O3 -m64 +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=osx-intel-x86-64-bin +#imach_64$(VERSION) +# +endif + +ifdef _intel32onosx +GCC=/opt/intel/bin/icc +CFLAGS= -m32 -g -std=c99 +LFLAGS= -g -m32 +CFLAGSOPT= -O3 -m32 -g -std=c99 +CROSSCOMPILATION= -DCROSS=0 +IGNORE :=$(shell bash -c "source /opt/intel/bin/iccvars.sh ia32; env | sed 's/=/:=/' | sed 's/^/export /' > makeenv") +include makeenv +#lipo -create -arch i386 HelloWorld_32 -arch x86_64 HelloWorld_64 -output HelloWorld +#lipo -create -arch i386 imach_32$(VERSION) -arch x86_64 imach_64$(VERSION) -output imach$(VERSION) +LFLAGSOPT= -O3 -m32 +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=osx-intel-ia32-bin +endif + +ifdef _linux64onosx +GCC=/usr/localold/gcc-4.8.1-for-linux64/bin/x86_64-pc-linux-gcc +STRIP=/usr/localold/gcc-4.8.1-for-linux64/bin/x86_64-pc-linux-strip +LFLAGS= -g +CFLAGS= -g +CROSSCOMPILATION= -DCROSS=1 +LFLAGSOPT= -O3 -lm -s +CFLAGSOPT= -O3 +TAR= /sw/bin/gnutar +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=linux-x86-64-bin +endif + +ifdef _linux32onosx +#GCC=/usr/local/i386-mingw32-4.3.0/bin/i386-mingw32-gcc +#GCC=/usr/local/cross-tools/bin/i686-w64-mingw32-gcc +GCC=/usr/localold/gcc-4.8.1-for-linux32/bin/i586-pc-linux-gcc +STRIP=/usr/localold/gcc-4.8.1-for-linux32/bin/i586-pc-linux-strip +LFLAGS= -g +CFLAGS= -g +LFLAGSOPT= -O3 -s -lm +CFLAGSOPT= -O3 +CROSSCOMPILATION= -DCROSS=1 +TAR= /sw/bin/gnutar +UNIX2DOS= unix2dos +SETUPCOMP= ~/bin/InnoSetup5Playonmac +CP= cp +BINVERSION=linux-i586-bin +endif + +ifdef _linux +#CFLAGS= -g -DUNIX -DDEBUGHESS +#CFLAGS= -g -DDEBUG -DFIXMNBRAK +#CFLAGS= -g -DDEBUG +CFLAGS= -g +LFLAGS= -g -lm +IGSL= -I/usr/include/gsl +LGSL= -lgsl -lgslcblas +INLOPT= -I/usr/local/include +LNLOPT= -lm -L/usr/local/lib -lnlopt +CFLAGSOPT= -O3 -g +LFLAGSOPT= -O3 -g -lm +CROSSCOMPILATION= -DCROSS=0 +UNIX2DOS= unix2dos +SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe" +BINVERSION=LINUXnative +CP= cp +endif + +SED= sed +PACKAGE=imach +PROGRAM=IMaCh + + +TMPSETUPSCRIPT=setup.iss +TMPNOREGSETUPSCRIPT=noreg-setup.iss +TMPSCRIPTIN=setup.iss.in +APPLICATION=IMaCh +APPNAME=$(APPLICATION)-$(VERSION) +APPCOMPILATIONMODE=$(IMACHSETUPVERSION) +GNUPLOTVERSION=5.1 +LICENSE=Copying +TMPSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-setup.exe +TMPNOREGSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-noreg-setup.exe +LICENSEFILE=$(LICENSE) +INFOBEFOREFILE=README.txt + +setup.iss: setup.iss.in + $(SED) -e "s/@APPNAME@/$(APPNAME)/g; \ + s/@NOTINNOREG@//g; \ + s/@NOREG@//g; \ + s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \ + s/@APPCOMPILATIONMODE@/$(APPCOMPILATIONMODE)/g; \ + s/@VERSION@/$(VERSION)/g; \ + s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \ + s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \ + s/@LICENSEFILE@/$(LICENSEFILE)/g; \ + s/@PACKAGE@/$(PACKAGE)/g; \ + s/@DICTLANG@/$(DICTLANG)/g; \ + s/@VERMAJOR@/$(VERMAJOR)/g; \ + s/@COPYRIGHT@/$(COPYRIGHT)/g;" \ + setup.iss.in > setup.iss + +$(TMPNOREGSETUPSCRIPT): $(TMPSCRIPTIN) + $(SED) -e "s/@APPNAME@/$(APPNAME)/g; \ + s/@NOTINNOREG@/\\;/g; \ + s/@NOREG@/noreg-/g; \ + s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \ + s/@VERSION@/$(VERSION)/g; \ + s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \ + s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \ + s/@LICENSEFILE@/$(LICENSEFILE)/g; \ + s/@PACKAGE@/$(PACKAGE)/g; \ + s/@DICTLANG@/$(DICTLANG)/g; \ + s/@VERMAJOR@/$(VERMAJOR)/g; \ + s/@COPYRIGHT@/$(COPYRIGHT)/g;" \ + $(TMPSCRIPTIN) > $(TMPNOREGSETUPSCRIPT) +# $(UNIX2DOS) $(TMPNOREGSETUPSCRIPT) + +$(TMPSETUPEXE): $(TMPSETUPSCRIPT) + $(SETUPCOMP) /cc $(TMPSETUPSCRIPT) + +#$(TMPNOREGSETUPEXE): $(TMPNOREGSETUPSCRIPT) +# $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) + +PARAM=mypar1 + +imachcyg-setup: imachcygopt.exe setup.iss + touch setup.iss.in + $(CP) imachcygopt.exe imach.exe + $(CP) imachcygopt.exe imach$(VERSION)-$(BINVERSION).exe + $(SETUPCOMP) /cc setup.iss + cp Output/$(TMPSETUPEXE) imachcyg-setup + +# imachcyg-noreg-setup : imachcygopt imachcygopt.o setup.iss.in noreg-setup.iss $(TMPNOREGSETUPEXE) +imachcyg-noreg-setup: imachcygopt.exe noreg-setup.iss + touch setup.iss.in + $(CP) imachcygopt.exe imach.exe + $(CP) imachcygopt.exe imach$(VERSION)-$(BINVERSION).exe + $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) + cp Output/$(TMPNOREGSETUPEXE) imachcyg-noreg-setup +# ICL compiler 64 +imachICL-build: imach.c + icl /GS /W3 /Zc:wchar_t /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "UNICODE" /Qipo /Zc:forScope /MT 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-set: ../build/icl64/Release/imach-$(VERSION).exe ../build/icl32/Release/imach-$(VERSION).exe setup.iss + pwd + touch setup.iss.in + echo SETUPCOMP=$(SETUPCOMP) + echo STRIP= $(STRIP) + echo BINVERSION= $(BINVERSION) + $(SETUPCOMP) /cc setup.iss + $(CP) Output/$(TMPSETUPEXE) imachICL-setup + +# imachICL64-setup: IMaCh-icl64-$(VERSION).exe setup.iss +# pwd +# $(CP) IMaCh-icl64-$(VERSION).exe imach.exe +# $(SETUPCOMP) /cc setup.iss +# $(CP) Output/$(TMPSETUPEXE) imachICL64-setup + +imachICL64-noreg-setup: IMaCh-icl64-$(VERSION).exe noreg-setup.iss + touch setup.iss.in + $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) + $(CP) Output/$(TMPSETUPEXE) imachICL64-noreg-setup + +../build/icl64/Release/IMaCh-$(VERSION).exe: imach.c ../distributions/windows/mybuildicl64.bat + rm -rf ../build/icl64 && mkdir ../build/icl64 + cp ../distributions/windows/mybuildicl64.bat ../build/icl64/ + cd ../build/icl64 + 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 ../distributions/windows/mybuildicl32.bat + rm -rf ../build/icl32 && mkdir -p ../build/icl32 + cp ../distributions/windows/mybuildicl32.bat ../build/icl32/ + cd ../build/icl32 + 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 startvm "Windows7-64" --type headless +# VBoxManage list runningvms +# sudo xlcem 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" 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" +# --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g: && cd \imach\imach-gui\build\icl32-xp &&" "C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\Tools\VsDevCmd.bat" "&&" "C:\Program Files (x86)\Intel\Composer XE 2015\bin\ipsxe-comp-vars.bat" "ia32" "vs2013" "&&" "msbuild imach-0.98q3.vcxproj /t:Build /p:Configuration=Release" +# --username brouard --wait-exit --wait-stdout -- "/c" "g: && cd \imach\imach-gui\build\icl32-xp\ &&C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K ""C:\Program Files (x86)\Intel\Composer XE 2015\bin\ipsxe-comp-vars.bat" ia32 vs2013"&& msbuild imach.vcxproj >c:\users\brouard\totog.txt" +# --username brouard --wait-exit --wait-stdout -- "/c" "g: && dir >c:\users\brouard\totog.txt" +#C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K ""C:\Program Files (x86)\Intel\Composer XE 2015\bin\ipsxe-comp-vars.bat" ia32 vs2013" +#C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K ""C:\Program Files (x86)\Intel\Composer XE 2015\bin\ipsxe-comp-vars.bat" intel64 vs2013" + +imachICL64-setup: ../build/icl64/Release/IMaCh-$(VERSION).exe setup.iss mybuildicl64.bat + +imachICL32-setup: ../build/icl32/Release/IMaCh-$(VERSION).exe setup.iss ../distributions/windows/mybuildicl32.bat + +imachVS32-setup: ../build/vs32/Release/IMaCh-$(VERSION).exe setup.iss mybuildvs32.bat + +imachICL32-noreg-setup: IMaCh-icl32.exe noreg-setup.iss + touch setup.iss.in + $(CP) IMaCh-icl32.exe imach.exe + $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) + $(CP) Output/$(TMPSETUPEXE) imachICL32-noreg-setup + +imachMVC-setup: imachMVC.exe setup.iss + touch setup.iss.in + $(CP) imachMVC.exe imach.exe + $(SETUPCOMP) /cc setup.iss + $(CP) Output/$(TMPSETUPEXE) imachMVC-setup + +# imachcyg-noreg-setup : imachcygopt imachcygopt.o setup.iss.in noreg-setup.iss $(TMPNOREGSETUPEXE) +imachMVC-noreg-setup: imachMVC.exe noreg-setup.iss + touch setup.iss.in + $(CP) imachMVC.exe imach.exe + $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT) + $(CP) Output/$(TMPNOREGSETUPEXE) imachcyg-noreg-setup + +simach : simach.o + $(CC) $(LFLAGS) $(LGSL) -o simach simach.o +simach.o : simach.c + $(CC) $(CFLAGS) -DGSL -c simach.c + +imachtest: imachtest.o + $(CC) $(LFLAGS) -o imachtest imachtest.o +ifdef _macosx + $(DSYMUTIL) imachtest +endif + +imach: imach.o + $(CC) -o imach $(LFLAGS) imach.o +ifdef _macosx + $(DSYMUTIL) imach +endif + +imach.o : 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 ../../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 ;\ + cp ../../tests/testV1V2.imach imach$(VERSION).app/Contents/Resources/tests ;\ + cp ../../tests/rtestV1V2.imach imach$(VERSION).app/Contents/Resources/tests ;\ + cp ../../tests/testV2.imach imach$(VERSION).app/Contents/Resources/tests ;\ + cp ../../tests/rtestV2.imach imach$(VERSION).app/Contents/Resources/tests ;\ + cp ../../tests/data/data2.txt imach$(VERSION).app/Contents/Resources/tests/data ;\ + 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.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.99r19-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r19.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r21-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r21.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r22-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r22.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r23-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r23.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r24-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r24.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r24-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r25.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r25-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r25-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r27.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v brouard@brouard.name:~/Documents/imach/cvs/imach/build/gnulinux/imach-0.99r33-1.x86_64.rpm Output/ +# rsync -v Output/imach-0.99r33-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r33-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach0.99r26.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r26-1.x86_64.rpm brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r26-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download +# rsync -v Output/imach-0.99r19-1.x86_64.rpm 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 + rsync -v Output/imach-0.99r36-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download + rsync -v Output/imach0.99r36.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download + +imachcyg : imachcyg.o + $(CC) $(LFLAGS) -o imach imachcyg.o +imachcyg.o : imach.c + $(CC) $(CFLAGS) -c -o imachcyg.o imach.c +imachcygopt.exe : imachcygopt.o + $(CC) $(LFLAGSOPT) -o imachcygopt.exe imachcygopt.o +imachcygopt.o : imach.c + $(CC) $(CFLAGSOPT) -c -o imachcygopt.o imach.c + +imachw32.o : imach.c + i386-mingw32-gcc -c imach.c -o imachw32.o +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) + +$(PARAM).htm: imach $(PARAM).imach data1.txt + ./imach $(PARAM).imach + +clean: + rm or$(PARAM).txt er$(PARAM).txt pijr$(PARAM).txt plr$(PARAM).txt \ + r$(PARAM).txt tr$(PARAM).txt vpl$(PARAM).txt pr$(PARAM).txt \ + vr$(PARAM).txt *.gif imach.exe imach.o + +