1: #Version has to be set in ../CMakeLists.txt too.
2: VERSION=0.98q5
3: # DRIVEG is for VirtualBox Windows 64bit
4: DRIVEG=g:
5: #DIRG is the corresponding build directory for Virtual Windows
6: DIRG=\imach\cvs\imach\build
7: 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
8: IMACHSETUPVERSION=icl
9: # This is for Windows only
10: #IMACHSETUPVERSION=mvc
11:
12: # Linux
13: # make _linux=1 imachopt
14: # make _linux=1 imach
15: # cpack -D CPACK_RPM_PACKAGE_DEBUG=1 -D CPACK_RPM_SPEC_INSTALL_POST="/bin/true" -G RPM
16: # make _linux32onosx=1 imachopt
17: # make _linux64onosx=1 imachopt
18:
19: # OS/X
20: # make _macosx=1 imachdmg
21: # make _intel64onosx=1 imachopt
22: # make _intel32onosx=1 imachopt
23: # make _intelUNBonosx=1 imachdmg # Not implemented (not useful)
24: # make _macosx=1 imach
25: # make _macosx=1 imachopt
26: # valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ~/Documents/imachcvs/imach/src/imach-1.129cvsmac radlc-1.129.imach
27:
28: # Windows
29: # make _windowsonosx=1 imachICL-setup (touch setup.iss.in) #binary should have been compiled on Windows with Intel
30: # make _windowsonosx=1 imachMVC-setup (touch setup.iss.in) #binary should have been compiled on Windows with cl
31: # make _windowsonosx=1 imachMVC-noreg-setup
32: #
33: # Windows cross-compiled mw64
34: # make _mw64onsox=1 imachcyg-setup
35: #
36: # make _windows=1 imachcyg
37: # make _windows=1 imachcyg-setup (touch setup.iss.in)
38: # make _windows=1 imachcyg-noreg-setup
39: #
40: # make _windowsonlinux=1 imachcyg-setup (touch setup.iss.in)
41: # make _windowsonlinux=1 imachcyg-noreg-setup
42: #
43: # make _windowscl=1 imachclopt
44:
45: #
46: # sortie dans Output/setup.exe
47: # ln -s /cygdrive/c/Program\ Files/Inno\ Setup\ 4/Compil32.exe /usr/local/bin/Compil32
48: ##SETUPCOMP= "C:\Program Files\Inno Setup 3\Compil32.exe"
49: #TESTFILE=$$HOME/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc-test-mac/adecode-1.142c.imach
50: #TESTFILE=$(HOME)/Documents/Recherches/REVES/carol/carol-june2014/educadlmwt24.imach
51: #TESTFILE=$(HOME)/Documents/Recherches/REVES/Biaspar/biaspar-wopowell.imach
52: #TESTFILE=$(HOME)/Documents/Recherches/REVES/Biaspar/rbiaspar-098p.imach
53: TESTFILE=$(HOME)/Documents/Recherches/REVES/Aaron/brouard/results/COVARAITE_94/rmypar24pis1cov1-age.imach
54: #TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc-test-mac/adecode-1.142c.imach
55: #TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc_test_magei4/radlc_often.imach
56: #CC= gcc -v
57: CC=$(GCC)
58: GCC= gcc
59:
60: ifdef _macosx
61: # Mac OS/X version
62: LFLAGS= -g -lm
63: #CFLAGS= -g -DDEBUG
64: CFLAGS= -g
65: LFLAGSOPT= -O3 -lm
66: CFLAGSOPT= -O3
67: CP= cp
68: CROSSCOMPILATION= -DCROSS=0
69: UNIX2DOS= echo "Unix2dos "
70: DSYMUTIL= dsymutil
71: STRIP= strip
72: BINVERSION=OSX
73: # Don'know how to launch imach098.pmsp in batch to create package file imach098Panther.pkg
74: # ./createdmg.sh imach imach098panther ./imach098Panther
75: # ./createdmg.sh imach imach098leopard ./imach098Leopard
76: # and directory ./imach098Panther contains package file imach098Panther.pkg
77: #./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/
78: # ./create-dmg --volname "IMaCh 0.98j" imach098j.dmg imach098Leopard
79: endif
80:
81: ifdef _windows
82: CC=c:\MinGW\bin\Mingw32-gcc
83:
84: # Windows cygwin version
85: LFLAGS= -g -mno-cygwin
86: CFLAGS= -g -mno-cygwin
87: LFLAGSOPT= -O3 -mno-cygwin
88: CFLAGSOPT= -O3 -mno-cygwin
89: UNIX2DOS= unix2dos
90: CP= copy
91: BINVERSION=CYGWIN
92: #SETUPCOMP= Compil32
93: ##SETUPCOMP=start /wait "C:\Program\ Files\\Compil32.exe"
94: # cygwin SETUPCOMP= "C:\Program Files\Inno Setup 4\Compil32.exe"
95: SETUPCOMP= "C:////Program Files////Inno Setup 4////Compil32.exe"
96: endif
97:
98: ifdef _windowsonlinux
99: GCC=/usr/bin/i586-pc-mingw32-gcc
100: LFLAGS= -g
101: CFLAGS= -g
102: LFLAGSOPT= -O3 -lm
103: CFLAGSOPT= -O3
104: CROSSCOMPILATION= -DCROSS=1
105: CP= cp
106: UNIX2DOS= unix2dos
107: SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe"
108: BINVERSION=WINDOWSonLINUX
109: endif
110:
111: ifdef _windowsonosx
112: #GCC=/usr/local/i386-mingw32-4.3.0/bin/i386-mingw32-gcc
113: #GCC=/usr/local/cross-tools/bin/i686-w64-mingw32-gcc
114: GCC=/usr/local/gcc-4.8.0-qt-4.8.4-for-mingw32/win32-gcc/bin/i586-mingw32-gcc-4.8.0
115: STRIP=/usr/local/gcc-4.8.0-qt-4.8.4-for-mingw32/win32-gcc/bin/i586-mingw32-strip
116: LFLAGS= -g
117: CFLAGS= -g
118: LFLAGSOPT= -O3 -s
119: CFLAGSOPT= -O3
120: CROSSCOMPILATION= -DCROSS=1
121: UNIX2DOS= unix2dos
122: SETUPCOMP= ~/bin/InnoSetup5Playonmac
123: CP= cp
124: BINVERSION=WIN32onOSX
125: endif
126:
127: ifdef _mw64onosx
128: GCC=/usr/local/mingw-w64-bin_i686-darwin_20130622/bin/x86_64-w64-mingw32-gcc-4.9.0
129: STRIP=/usr/local/mingw-w64-bin_i686-darwin_20130622/bin/x86_64-w64-mingw32-strip
130: LFLAGS= -g
131: CFLAGS= -g
132: LFLAGSOPT= -O3 -lm -s
133: CFLAGSOPT= -O3
134: CROSSCOMPILATION= -DCROSS=1
135: UNIX2DOS= unix2dos
136: SETUPCOMP= ~/bin/InnoSetup5Playonmac
137: CP= cp
138: BINVERSION=w64-mingw32-x86-64-bin
139: endif
140:
141: ifdef _windowscl
142: rem "C:\Program Files\Microsoft Visual Studio 10.0\VC\bin\vcvas32.bat"
143: endif
144:
145: # make _intel64onosx=1 imachopt
146: #source /opt/intel/bin/iccvars.sh intel64
147: ifdef _intel64onosx
148: GCC=/opt/intel/bin/icc
149: CFLAGS= -m64 -g -std=c99
150: LFLAGS= -g -m64
151: #CFLAGSOPT= -O3 -m64 -g -std=c99 -no-prec-div idem
152: #CFLAGSOPT= -O3 -m64 -g -std=c99 -xSSSE3_ATOM 402
153: CFLAGSOPT= -O3 -m64 -g -std=c99
154: CROSSCOMPILATION= -DCROSS=0
155: IGNORE :=$(shell bash -c "source /opt/intel/bin/iccvars.sh intel64; env | sed 's/=/:=/' | sed 's/^/export /' > makeenv")
156: include makeenv
157: #lipo -create -arch i386 HelloWorld_32 -arch x86_64 HelloWorld_64 -output HelloWorld
158: LFLAGSOPT= -O3 -m64
159: UNIX2DOS= unix2dos
160: SETUPCOMP= ~/bin/InnoSetup5Playonmac
161: CP= cp
162: BINVERSION=osx-intel-x86-64-bin
163: #imach_64$(VERSION)
164: #
165: endif
166:
167: ifdef _intel32onosx
168: GCC=/opt/intel/bin/icc
169: CFLAGS= -m32 -g -std=c99
170: LFLAGS= -g -m32
171: CFLAGSOPT= -O3 -m32 -g -std=c99
172: CROSSCOMPILATION= -DCROSS=0
173: IGNORE :=$(shell bash -c "source /opt/intel/bin/iccvars.sh ia32; env | sed 's/=/:=/' | sed 's/^/export /' > makeenv")
174: include makeenv
175: #lipo -create -arch i386 HelloWorld_32 -arch x86_64 HelloWorld_64 -output HelloWorld
176: #lipo -create -arch i386 imach_32$(VERSION) -arch x86_64 imach_64$(VERSION) -output imach$(VERSION)
177: LFLAGSOPT= -O3 -m32
178: UNIX2DOS= unix2dos
179: SETUPCOMP= ~/bin/InnoSetup5Playonmac
180: CP= cp
181: BINVERSION=osx-intel-ia32-bin
182: endif
183:
184: ifdef _linux64onosx
185: GCC=/usr/localold/gcc-4.8.1-for-linux64/bin/x86_64-pc-linux-gcc
186: STRIP=/usr/localold/gcc-4.8.1-for-linux64/bin/x86_64-pc-linux-strip
187: LFLAGS= -g
188: CFLAGS= -g
189: CROSSCOMPILATION= -DCROSS=1
190: LFLAGSOPT= -O3 -lm -s
191: CFLAGSOPT= -O3
192: TAR= /sw/bin/gnutar
193: UNIX2DOS= unix2dos
194: SETUPCOMP= ~/bin/InnoSetup5Playonmac
195: CP= cp
196: BINVERSION=linux-x86-64-bin
197: endif
198:
199: ifdef _linux32onosx
200: #GCC=/usr/local/i386-mingw32-4.3.0/bin/i386-mingw32-gcc
201: #GCC=/usr/local/cross-tools/bin/i686-w64-mingw32-gcc
202: GCC=/usr/localold/gcc-4.8.1-for-linux32/bin/i586-pc-linux-gcc
203: STRIP=/usr/localold/gcc-4.8.1-for-linux32/bin/i586-pc-linux-strip
204: LFLAGS= -g
205: CFLAGS= -g
206: LFLAGSOPT= -O3 -s -lm
207: CFLAGSOPT= -O3
208: CROSSCOMPILATION= -DCROSS=1
209: TAR= /sw/bin/gnutar
210: UNIX2DOS= unix2dos
211: SETUPCOMP= ~/bin/InnoSetup5Playonmac
212: CP= cp
213: BINVERSION=linux-i586-bin
214: endif
215:
216: ifdef _linux
217: #CFLAGS= -g -DUNIX -DDEBUGHESS
218: #CFLAGS= -g -DDEBUG -DFIXMNBRAK
219: #CFLAGS= -g -DDEBUG
220: CFLAGS= -g
221: LFLAGS= -g -lm
222: IGSL= -I/usr/include/gsl
223: LGSL= -lgsl -lgslcblas
224: INLOPT= -I/usr/local/include
225: LNLOPT= -lm -L/usr/local/lib -lnlopt
226: CFLAGSOPT= -O3 -g
227: LFLAGSOPT= -O3 -g -lm
228: CROSSCOMPILATION= -DCROSS=0
229: UNIX2DOS= unix2dos
230: SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe"
231: BINVERSION=LINUXnative
232: CP= cp
233: endif
234:
235: SED= sed
236: PACKAGE=imach
237: PROGRAM=IMaCh
238:
239:
240: TMPSETUPSCRIPT=setup.iss
241: TMPNOREGSETUPSCRIPT=noreg-setup.iss
242: TMPSCRIPTIN=setup.iss.in
243: APPLICATION=IMaCh
244: APPNAME=$(APPLICATION)-$(VERSION)
245: APPCOMPILATIONMODE=$(IMACHSETUPVERSION)
246: GNUPLOTVERSION=4.6
247: LICENSE=Copying
248: TMPSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-setup.exe
249: TMPNOREGSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-noreg-setup.exe
250: LICENSEFILE=$(LICENSE)
251: INFOBEFOREFILE=README.txt
252:
253: setup.iss: setup.iss.in
254: $(SED) -e "s/@APPNAME@/$(APPNAME)/g; \
255: s/@NOTINNOREG@//g; \
256: s/@NOREG@//g; \
257: s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \
258: s/@APPCOMPILATIONMODE@/$(APPCOMPILATIONMODE)/g; \
259: s/@VERSION@/$(VERSION)/g; \
260: s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \
261: s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \
262: s/@LICENSEFILE@/$(LICENSEFILE)/g; \
263: s/@PACKAGE@/$(PACKAGE)/g; \
264: s/@DICTLANG@/$(DICTLANG)/g; \
265: s/@VERMAJOR@/$(VERMAJOR)/g; \
266: s/@COPYRIGHT@/$(COPYRIGHT)/g;" \
267: setup.iss.in > setup.iss
268:
269: $(TMPNOREGSETUPSCRIPT): $(TMPSCRIPTIN)
270: $(SED) -e "s/@APPNAME@/$(APPNAME)/g; \
271: s/@NOTINNOREG@/\\;/g; \
272: s/@NOREG@/noreg-/g; \
273: s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \
274: s/@VERSION@/$(VERSION)/g; \
275: s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \
276: s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \
277: s/@LICENSEFILE@/$(LICENSEFILE)/g; \
278: s/@PACKAGE@/$(PACKAGE)/g; \
279: s/@DICTLANG@/$(DICTLANG)/g; \
280: s/@VERMAJOR@/$(VERMAJOR)/g; \
281: s/@COPYRIGHT@/$(COPYRIGHT)/g;" \
282: $(TMPSCRIPTIN) > $(TMPNOREGSETUPSCRIPT)
283: # $(UNIX2DOS) $(TMPNOREGSETUPSCRIPT)
284:
285: $(TMPSETUPEXE): $(TMPSETUPSCRIPT)
286: $(SETUPCOMP) /cc $(TMPSETUPSCRIPT)
287:
288: #$(TMPNOREGSETUPEXE): $(TMPNOREGSETUPSCRIPT)
289: # $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
290:
291: PARAM=mypar1
292:
293: imachcyg-setup: imachcygopt.exe setup.iss
294: touch setup.iss.in
295: $(CP) imachcygopt.exe imach.exe
296: $(CP) imachcygopt.exe imach$(VERSION)-$(BINVERSION).exe
297: $(SETUPCOMP) /cc setup.iss
298: cp Output/$(TMPSETUPEXE) imachcyg-setup
299:
300: # imachcyg-noreg-setup : imachcygopt imachcygopt.o setup.iss.in noreg-setup.iss $(TMPNOREGSETUPEXE)
301: imachcyg-noreg-setup: imachcygopt.exe noreg-setup.iss
302: touch setup.iss.in
303: $(CP) imachcygopt.exe imach.exe
304: $(CP) imachcygopt.exe imach$(VERSION)-$(BINVERSION).exe
305: $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
306: cp Output/$(TMPNOREGSETUPEXE) imachcyg-noreg-setup
307: # ICL compiler 64
308: imachICL-build: imach.c
309: icl /GS /W3 /Zc:wchar_t /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "UNICODE" /Qipo /Zc:forScope /MT imach.c
310: #/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"
311: # /Users/nbrouard/Documents/imach/imach-gui/build/icl64/Release/imach.exe
312: # both 32 and 64 executables should have been built on Windows with Intel compiler.
313: imachICL-setup: ../build/icl64/Release/IMaCh-$(VERSION).exe ../build/icl32/Release/IMaCh-$(VERSION).exe setup.iss ../distributions/windows/mybuildicl64.bat ../distributions/windows/mybuildicl32.bat
314: pwd
315: touch setup.iss.in
316: $(SETUPCOMP) /cc setup.iss
317: $(CP) Output/$(TMPSETUPEXE) imachICL-setup
318:
319: # imachICL64-setup: IMaCh-icl64-$(VERSION).exe setup.iss
320: # pwd
321: # $(CP) IMaCh-icl64-$(VERSION).exe imach.exe
322: # $(SETUPCOMP) /cc setup.iss
323: # $(CP) Output/$(TMPSETUPEXE) imachICL64-setup
324:
325: imachICL64-noreg-setup: IMaCh-icl64-$(VERSION).exe noreg-setup.iss
326: touch setup.iss.in
327: $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
328: $(CP) Output/$(TMPSETUPEXE) imachICL64-noreg-setup
329:
330: ../build/icl64/Release/IMaCh-$(VERSION).exe: imach.c ../distributions/windows/mybuildicl64.bat
331: rm -rf ../build/icl64 && mkdir ../build/icl64
332: cp ../distributions/windows/mybuildicl64.bat ../build/icl64/
333: cd ../build/icl64
334: VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \
335: --username brouard --verbose --wait-exit --wait-stdout --wait-stderr -- "/c" "$(DRIVEG)$(DIRG)\icl64\mybuildicl64.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)"
336:
337: ../build/icl32/Release/IMaCh-$(VERSION).exe: imach.c ../distributions/windows/mybuildicl32.bat
338: rm -rf ../build/icl32 && mkdir -p ../build/icl32
339: cp ../distributions/windows/mybuildicl32.bat ../build/icl32/
340: cd ../build/icl32
341: VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \
342: --username brouard --verbose --wait-exit --wait-stdout -- "/c" "$(DRIVEG)$(DIRG)\icl32\mybuildicl32.bat" "$(VERSION)" "$(DRIVEG)" "$(DIRG)"
343:
344: ../build/vs32/Release/IMaCh-$(VERSION).exe: imach.c mybuildvs32.bat
345: rm -rf ../build/vs32 && mkdir -p ../build/vs32
346: cp mybuildvs32.bat ../build/vs32/
347: cd ../build/vs32
348: VBoxManage --nologo guestcontrol "Windows7-64" execute --image "C:\Windows\SysWOW64\cmd.exe" \
349: --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g:\imach\imach-gui\build\vs32\mybuildvs32.bat" "$(VERSION)"
350: # C:\Windows\SysWOW64\cmd.exe /E:ON /V:ON /K "g:\imach\imach-gui\build\icl32\mybuild.bat"
351: #WORK --username brouard --verbose --wait-exit --wait-stdout -- "/c" "c:\users\brouard\mybuild.bat"
352: # --username brouard --verbose --wait-exit --wait-stdout -- "/c" "g: && cd \imach\imach-gui\build\icl32 && mybuild.bat"
353: # --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"
354: # --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"
355: # --username brouard --wait-exit --wait-stdout -- "/c" "g: && dir >c:\users\brouard\totog.txt"
356: #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"
357: #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"
358:
359: imachICL64-setup: ../build/icl64/Release/IMaCh-$(VERSION).exe setup.iss mybuildicl64.bat
360:
361: imachICL32-setup: ../build/icl32/Release/IMaCh-$(VERSION).exe setup.iss mybuildicl32.bat
362:
363: imachVS32-setup: ../build/vs32/Release/IMaCh-$(VERSION).exe setup.iss mybuildvs32.bat
364:
365: imachICL32-noreg-setup: IMaCh-icl32.exe noreg-setup.iss
366: touch setup.iss.in
367: $(CP) IMaCh-icl32.exe imach.exe
368: $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
369: $(CP) Output/$(TMPSETUPEXE) imachICL32-noreg-setup
370:
371: imachMVC-setup: imachMVC.exe setup.iss
372: touch setup.iss.in
373: $(CP) imachMVC.exe imach.exe
374: $(SETUPCOMP) /cc setup.iss
375: $(CP) Output/$(TMPSETUPEXE) imachMVC-setup
376:
377: # imachcyg-noreg-setup : imachcygopt imachcygopt.o setup.iss.in noreg-setup.iss $(TMPNOREGSETUPEXE)
378: imachMVC-noreg-setup: imachMVC.exe noreg-setup.iss
379: touch setup.iss.in
380: $(CP) imachMVC.exe imach.exe
381: $(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
382: $(CP) Output/$(TMPNOREGSETUPEXE) imachcyg-noreg-setup
383:
384: simach : simach.o
385: $(CC) $(LFLAGS) $(LGSL) -o simach simach.o
386: simach.o : simach.c
387: $(CC) $(CFLAGS) -DGSL -c simach.c
388:
389: imachtest: imachtest.o
390: $(CC) $(LFLAGS) -o imachtest imachtest.o
391: ifdef _macosx
392: $(DSYMUTIL) imachtest
393: endif
394:
395: imach: imach.o
396: $(CC) $(LFLAGS) -o imach imach.o
397: ifdef _macosx
398: $(DSYMUTIL) imach
399: endif
400:
401: imach.o : imach.c
402: $(CC) $(CFLAGS) $(CROSSCOMPILATION) -c imach.c
403: # $(CC) $(CFLAGS) $(CROSSCOMPILATION) -DDEBUGBRENT -c imach.c
404:
405: imachtest.o : imach.c
406: $(CC) $(CFLAGS) $(CROSSCOMPILATION) -DPOWELLORIGINAL -DNRCORIGINAL -DINFINITYORIGINAL -DDEBUGBRENT -o imachtest.o -c imach.c
407:
408: # $(CC) $(CFLAGS) $(CROSSCOMPILATION) -DFIXMNBRAK -o imachtest.o -c imach.c
409:
410: # http://msdn.microsoft.com/en-us/library/abx4dbyh%28v=vs.100%29.aspx
411: imachcl: imach.c
412: cl /O2 /MT /o imach.exe imach.c
413:
414: imach097b : imach097b.o
415: $(CC) $(LFLAGS) -o imach097b imach097b.o
416: imach097b.o : imach097b.c
417: $(CC) $(CFLAGS) -DPOWELL -c imach097b.c
418:
419:
420: imachsimplified : imachsimplified.o
421: $(CC) $(LFLAGSOPT) -o imachsimplified imachsimplified.o
422: imachsimplified.o : imachsimplified.c
423: $(CC) $(CFLAGSOPT) -DPOWELL -c imachsimplified.c
424:
425: imachgsl : imachgsl.o
426: $(CC) -o imachgsl imach.o $(LFLAGS) $(LGSL)
427: imachgsl.o : imach.c
428: $(CC) $(CFLAGS) -DGSL $(IGSL) -c imach.c
429:
430: imachNEWUOAopt : imachNEWUOAopt.o
431: $(CC) -o imachNEWUOAopt imachNEWUOAopt.o $(LFLAGS) -g $(LNLOPT)
432: imachNEWUOAopt.o : imach.c
433: $(CC) $(CFLAGS) -g -DNLOPT $(INLOPT) -DNEWUOA -o imachNEWUOAopt.o -c imach.c
434:
435: imachBOBYQAopt : imachBOBYQAopt.o
436: $(CC) -o imachBOBYQAopt imachBOBYQAopt.o $(LFLAGS) $(LNLOPT)
437: imachBOBYQAopt.o : imach.c
438: $(CC) $(CFLAGS) -DNLOPT $(INLOPT) -DBOBYQA -o imachBOBYQAopt.o -c imach.c
439:
440:
441: imachopt : imachopt.o
442: $(CC) $(LFLAGSOPT) -o imachopt imachopt.o
443: ln -f imachopt imach
444: $(CP) imachopt Output/imachopt$(VERSION)-$(BINVERSION)
445: $(CP) -f imach ../bin
446: ifdef _intel64onosx
447: $(CP) imachopt Output/imachopt$(VERSION)-$(BINVERSION)
448: endif
449: ifdef _macosx
450: $(STRIP) imach
451: endif
452: ifdef _linux32onosx
453: (cd .. && $(TAR) jcvf src/Output/imach-Linux-$(VERSION)-$(BINVERSION).tar.bz2 bin html/doc/biaspar.imach html/doc/data1.txt)
454: endif
455: ifdef _linux64onosx
456: (cd .. && $(TAR) jcvf src/Output/imach-Linux-$(VERSION)-$(BINVERSION).tar.bz2 bin html/doc/biaspar.imach html/doc/data1.txt)
457: endif
458:
459: imachopt.o : imach.c
460: $(CC) $(CFLAGSOPT) $(CROSSCOMPILATION) -o imachopt.o -c imach.c
461: # $(CC) $(CFLAGSOPT) -DPOWELL -o imachopt.o -c imach.c
462:
463: imachUB : imach32 imach64
464: lipo -create -arch i386 imach_32 -arch x86_64 imach_64 -output imach$(VERSION)
465:
466:
467: #imachdmg : imachopt.o create-dmg applet IMaChInfo.plist.in IMaChPkgInfo.in IMaCh.icns main.scpt.in IMaCh-ecrandemarrage.rsrc TXT.rtf
468: imachdmg : imachopt.o create-dmg applet IMaChInfo.plist.in IMaChPkgInfo.in IMaCh.icns main.scpt.in IMaCh-ecrandemarrage.rsrc TXT.rtf
469: $(CC) $(LFLAGSOPT) -o imach imachopt.o
470: #hdiutil detach /Volumes/IMaCh\ $(VERSION)
471: rm -rf imach$(VERSION).app
472: mkdir -p imach$(VERSION).app
473: mkdir -p imach$(VERSION).app/Contents
474: mkdir -p imach$(VERSION).app/Contents/MacOS
475: cp applet imach$(VERSION).app/Contents/MacOS
476: mkdir -p imach$(VERSION).app/Contents/Resources
477: mkdir -p imach$(VERSION).app/Contents/Resources/Scripts
478: mkdir -p imach$(VERSION).app/Contents/Resources/bin
479: mkdir -p imach$(VERSION).app/Contents/Resources/html
480: cp imach imach$(VERSION).app/Contents/Resources/bin
481: cp gnuplot_bin/gnuplot_2_6_5_OSX imach$(VERSION).app/Contents/Resources/bin/gnuplot
482: mkdir -p imach$(VERSION).app/Contents/Resources/description.rtfd
483: cp -p TXT.rtf imach$(VERSION).app/Contents/Resources/description.rtfd
484: $(SED) -e "s/@VERSION@/$(VERSION)/g;" \
485: IMaChInfo.plist.in >imach$(VERSION).app/Contents/Info.plist
486: cp -p IMaChPkgInfo.in imach$(VERSION).app/Contents/PkgInfo
487: cp -p IMaCh.icns imach$(VERSION).app/Contents/Resources/applet.icns
488: cp -r -p main.scpt.in imach$(VERSION).app/Contents/Resources/Scripts/main.scpt
489: cp IMaCH-ecrandemarrage.rsrc imach$(VERSION).app/Contents/Resources/applet.rsrc
490: cp ../html/doc/data1.txt imach$(VERSION).app/Contents/Resources/html
491: cp ../html/doc/biaspar.log imach$(VERSION).app/Contents/Resources/html
492: cp ../html/doc/biaspar.imach imach$(VERSION).app/Contents/Resources/html
493: rm -f imach$(VERSION).dmg
494: ./createdmg3.sh --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION)
495: mv imach$(VERSION).dmg Output/
496: # ./create-dmg --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION).app
497: # ./createdmg2.sh --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach$(VERSION)
498:
499: md5:
500: ls Output/* | xargs md5sum
501: upload:
502: rsync -v Output/IMaCh-0.98q4-icl-setup.exe brouard@henry.ined.fr:/home/euroreves/html/imach/Download
503: rsync -v Output/imach0.98q4.dmg brouard@henry.ined.fr:/home/euroreves/html/imach/Download
504: # rsync -v Output/* brouard@henry.ined.fr:/home/euroreves/html/imach/Download
505:
506: imachcyg : imachcyg.o
507: $(CC) $(LFLAGS) -o imach imachcyg.o
508: imachcyg.o : imach.c
509: $(CC) $(CFLAGS) -c -o imachcyg.o imach.c
510: imachcygopt.exe : imachcygopt.o
511: $(CC) $(LFLAGSOPT) -o imachcygopt.exe imachcygopt.o
512: imachcygopt.o : imach.c
513: $(CC) $(CFLAGSOPT) -c -o imachcygopt.o imach.c
514:
515: imachw32.o : imach.c
516: i386-mingw32-gcc -c imach.c -o imachw32.o
517: imach.exe : imachw32.o
518: i386-mingw32-gcc -mwindows -o imach.exe -lm imachw32.o
519: i386-mingw32-strip imach.exe
520:
521: valgrind-test : imach $(TESTFILE)
522: valgrind --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ./imach $(TESTFILE)
523: test: imach $(TESTFILE)
524: gdb ./imach $(TESTFILE)
525:
526: $(PARAM).htm: imach $(PARAM).imach data1.txt
527: ./imach $(PARAM).imach
528:
529: clean:
530: rm or$(PARAM).txt er$(PARAM).txt pijr$(PARAM).txt plr$(PARAM).txt \
531: r$(PARAM).txt tr$(PARAM).txt vpl$(PARAM).txt pr$(PARAM).txt \
532: vr$(PARAM).txt *.gif imach.exe imach.o
533:
534:
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>