File:  [Local Repository] / imach / src / Makefile
Revision 1.34: download - view: text, annotated - select for diffs
Tue Jun 10 21:24:21 2014 UTC (10 years ago) by brouard
Branches: MAIN
CVS tags: HEAD
Summary: Valgrind added	with test file
Author: Nicolas Brouard

Valgrind works on OS/X too.

    1: VERSION=0.98nR
    2: COPYRIGHT=Copyright (C)  2002-2015 INED-EUROREVES-Institut de longevite-Japan Society for the Promotion of Science (Grant-in-Aid for Scientific Research 25293121)
    3: IMACHSETUPVERSION=1
    4: 
    5: # make _linux=1 imachopt
    6: # make _linux=1 imach
    7: 
    8: # make _macosx=1 imach
    9: # make _macosx=1 imachdmg
   10: #  valgrind  --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ~/Documents/imachcvs/imach/src/imach-1.129cvsmac radlc-1.129.imach
   11: 
   12: #        Windows
   13: # make _windows=1 imachcyg
   14: # make _windows=1 imachcyg-setup (touch setup.iss.in)
   15: # make _windows=1 imachcyg-noreg-setup
   16: #
   17: # make _windowsonlinux=1 imachcyg-setup (touch setup.iss.in)
   18: # make _windowsonlinux=1 imachcyg-noreg-setup
   19: #
   20: # make _windowsonosx=1 imachcyg-setup (touch setup.iss.in)
   21: # make _windowsonosx=1 imachcyg-noreg-setup
   22: #
   23: # sortie dans Output/setup.exe
   24: # ln -s /cygdrive/c/Program\ Files/Inno\ Setup\ 4/Compil32.exe /usr/local/bin/Compil32
   25: ##SETUPCOMP=  "C:\Program Files\Inno Setup 3\Compil32.exe"
   26: #TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc-test-mac/adecode-1.142c.imach
   27: TESTFILE=$(HOME)/Documents/Recherches/REVES/SAITO/Tokyo2014/adlc_test_magei4/radlc_often.imach
   28: #CC= gcc -v
   29: CC=$(GCC)
   30: GCC= gcc
   31: 
   32: ifdef _macosx
   33: # Mac OS/X version
   34: LFLAGS= -g -lm -DUNIX
   35: CFLAGS= -g -DUNIX
   36: LFLAGSOPT= -O3 -lm -DUNIX
   37: CFLAGSOPT= -O3 -DUNIX
   38: UNIX2DOS= echo "Unix2dos " 
   39: DSYMUTIL= dsymutil
   40: # Don'know how to launch imach098.pmsp in batch to create package file imach098Panther.pkg
   41: # ./createdmg.sh imach imach098panther ./imach098Panther
   42: # ./createdmg.sh imach imach098leopard ./imach098Leopard
   43: # and directory ./imach098Panther contains package file imach098Panther.pkg
   44: #./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/
   45: # ./create-dmg --volname "IMaCh 0.98j" imach098j.dmg imach098Leopard
   46: endif
   47: 
   48: ifdef _windows
   49: CC=c:\MinGW\bin\Mingw32-gcc
   50: 
   51: # Windows cygwin version
   52: LFLAGS= -g -mno-cygwin
   53: CFLAGS= -g -mno-cygwin
   54: LFLAGSOPT= -O3 -mno-cygwin
   55: CFLAGSOPT= -O3 -mno-cygwin
   56: UNIX2DOS= unix2dos
   57: CP= copy
   58: #SETUPCOMP= Compil32 
   59: ##SETUPCOMP=start /wait "C:\Program\ Files\\Compil32.exe"
   60: # cygwin SETUPCOMP=  "C:\Program Files\Inno Setup 4\Compil32.exe"
   61: SETUPCOMP= "C:////Program Files////Inno Setup 4////Compil32.exe"
   62: endif
   63: 
   64: ifdef _windowsonlinux
   65: GCC=/usr/bin/i586-pc-mingw32-gcc
   66: LFLAGS= -g
   67: CFLAGS= -g
   68: LFLAGSOPT= -O3 -lm
   69: CFLAGSOPT= -O3
   70: CP= cp
   71: UNIX2DOS= unix2dos
   72: SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe"
   73: endif
   74: 
   75: ifdef _windowsonosx
   76: GCC=/usr/local/i386-mingw32-4.3.0/bin/i386-mingw32-gcc
   77: # w64 outputs bigger executables
   78: #GCC=/usr/local/cross-tools/bin/i686-w64-mingw32-gcc
   79: LFLAGS= -g
   80: CFLAGS= -g
   81: LFLAGSOPT= -O3
   82: CFLAGSOPT= -O3
   83: UNIX2DOS= unix2dos
   84: SETUPCOMP= ~/bin/InnoSetup5Playonmac
   85: CP= cp
   86: endif
   87: 
   88: ifdef _linux
   89: #CFLAGS= -g -DUNIX -DDEBUGHESS
   90: CFLAGS= -g -DUNIX -DLINUX
   91: LFLAGS= -g -lm 
   92: IGSL= -I/usr/include/gsl
   93: LGSL= -lgsl -lgslcblas
   94: CFLAGSOPT= -O3 -DUNIX -DLINUX
   95: LFLAGSOPT= -O3 -lm
   96: UNIX2DOS= unix2dos
   97: SETUPCOMP= wine "C:////Program Files////Inno Setup 4////Compil32.exe"
   98: endif
   99: 
  100: SED= sed
  101: PACKAGE=imach
  102: PROGRAM=IMaCh
  103: 
  104: 
  105: 
  106: TMPSETUPSCRIPT=setup.iss
  107: TMPNOREGSETUPSCRIPT=noreg-setup.iss
  108: TMPSCRIPTIN=setup.iss.in
  109: APPLICATION=IMaCh
  110: APPNAME=$(APPLICATION)-$(VERSION)
  111: GNUPLOTVERSION=4.0
  112: LICENSE=Copying
  113: TMPSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-setup.exe
  114: TMPNOREGSETUPEXE=imach-$(VERSION)-$(IMACHSETUPVERSION)-noreg-setup.exe
  115: LICENSEFILE=$(LICENSE)
  116: INFOBEFOREFILE=README.txt
  117: 
  118: setup.iss: setup.iss.in
  119: 	$(SED) -e "s/@APPNAME@/$(APPNAME)/g; \
  120: 		s/@NOTINNOREG@//g; \
  121: 		s/@NOREG@//g; \
  122: 		s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \
  123: 		s/@VERSION@/$(VERSION)/g; \
  124: 		s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \
  125: 		s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \
  126: 		s/@LICENSEFILE@/$(LICENSEFILE)/g; \
  127: 		s/@PACKAGE@/$(PACKAGE)/g; \
  128: 		s/@DICTLANG@/$(DICTLANG)/g; \
  129: 	   	s/@VERMAJOR@/$(VERMAJOR)/g; \
  130: 		s/@COPYRIGHT@/$(COPYRIGHT)/g;" \
  131: 		setup.iss.in > setup.iss
  132: 
  133: $(TMPNOREGSETUPSCRIPT): $(TMPSCRIPTIN)
  134: 	$(SED) -e "s/@APPNAME@/$(APPNAME)/g; \
  135: 		s/@NOTINNOREG@/\\;/g; \
  136: 		s/@NOREG@/noreg-/g; \
  137: 		s/@IMACHSETUPVERSION@/$(IMACHSETUPVERSION)/g; \
  138: 		s/@VERSION@/$(VERSION)/g; \
  139: 		s/@GNUPLOTVERSION@/$(GNUPLOTVERSION)/g; \
  140: 		s/@INFOBEFOREFILE@/$(INFOBEFOREFILE)/g; \
  141: 		s/@LICENSEFILE@/$(LICENSEFILE)/g; \
  142: 		s/@PACKAGE@/$(PACKAGE)/g; \
  143: 		s/@DICTLANG@/$(DICTLANG)/g; \
  144: 	   	s/@VERMAJOR@/$(VERMAJOR)/g; \
  145: 		s/@COPYRIGHT@/$(COPYRIGHT)/g;" \
  146: 		$(TMPSCRIPTIN) > $(TMPNOREGSETUPSCRIPT)
  147: #	$(UNIX2DOS) $(TMPNOREGSETUPSCRIPT)
  148: 
  149: $(TMPSETUPEXE): $(TMPSETUPSCRIPT)
  150: 	$(SETUPCOMP) /cc $(TMPSETUPSCRIPT)
  151: 
  152: $(TMPNOREGSETUPEXE): $(TMPNOREGSETUPSCRIPT)
  153: 	$(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
  154: 
  155: PARAM=mypar1
  156: 
  157: imachcyg-setup: imachcygopt.exe setup.iss
  158: 	$(CP) imachcygopt.exe imach.exe
  159: 	$(SETUPCOMP) /cc setup.iss
  160: 	cp Output/$(TMPSETUPEXE) imachcyg-setup
  161: 
  162: # imachcyg-noreg-setup : imachcygopt imachcygopt.o setup.iss.in noreg-setup.iss $(TMPNOREGSETUPEXE)
  163: imachcyg-noreg-setup: imachcygopt.exe noreg-setup.iss
  164: 	$(CP) imachcygopt.exe imach.exe
  165: 	$(SETUPCOMP) /cc $(TMPNOREGSETUPSCRIPT)
  166: 	cp Output/$(TMPNOREGSETUPEXE) imachcyg-noreg-setup
  167: 
  168: simach : simach.o 
  169: 	$(CC) $(LFLAGS) $(LGSL) -o simach simach.o
  170: simach.o : simach.c 
  171: 	$(CC) $(CFLAGS) -DGSL -c simach.c
  172: 
  173: imach : imach.o 
  174: 	$(CC) $(LFLAGS) -o imach imach.o
  175: ifdef _macosx
  176: 	$(DSYMUTIL) imach
  177: endif
  178: 
  179: imach.o : imach.c 
  180: 	$(CC) $(CFLAGS) -DPOWELL -c imach.c
  181: imach-1.129cvsmac : imach-1.129cvsmac.o 
  182: 	$(CC) $(LFLAGS) -o imach-1.129cvsmac imach-1.129cvsmac.o
  183: imach-1.129cvsmac.o : imach-1.129cvsmac.c 
  184: 	$(CC) $(CFLAGS) -DPOWELL -c imach-1.129cvsmac.c
  185: 
  186: imach097b : imach097b.o 
  187: 	$(CC) $(LFLAGS) -o imach097b imach097b.o
  188: imach097b.o : imach097b.c 
  189: 	$(CC) $(CFLAGS) -DPOWELL -c imach097b.c
  190: 
  191: 
  192: imachsimplified : imachsimplified.o 
  193: 	$(CC)  $(LFLAGSOPT) -o imachsimplified imachsimplified.o
  194: imachsimplified.o : imachsimplified.c 
  195: 	$(CC) $(CFLAGSOPT) -DPOWELL -c imachsimplified.c
  196: 
  197: imachgsl : imachgsl.o 
  198: 	$(CC) $(LFLAGS) $(LGSL) -o imachgsl imach.o
  199: imachgsl.o : imach.c 
  200: 	$(CC) $(CFLAGS) -DGSL $(IGSL) -c imach.c
  201: 
  202: imachopt : imachopt.o 
  203: 	$(CC) $(LFLAGSOPT) -o imachopt imachopt.o
  204: 	ln -f imachopt imach
  205: imachopt.o : imach.c 
  206: 	$(CC) $(CFLAGSOPT) -DPOWELL -o imachopt.o -c imach.c
  207: 
  208: imachdmg : imachopt.o create-dmg
  209: 	$(CC) $(LFLAGSOPT) -o imach imachopt.o
  210: 	cp imach imach098Leopard/bin
  211: 	./create-dmg --volname "IMaCh $(VERSION)" imach$(VERSION).dmg imach098Leopard
  212: 
  213: 
  214: imachcyg : imachcyg.o  strsep.o
  215: 	$(CC) $(LFLAGS) -o imach imachcyg.o strsep.o
  216: imachcyg.o : imach.c 
  217: 	$(CC) $(CFLAGS)  -c -o imachcyg.o imach.c
  218: imachcygopt.exe : imachcygopt.o  strsep.o
  219: 	$(CC) $(LFLAGSOPT) -o imachcygopt.exe imachcygopt.o strsep.o
  220: imachcygopt.o : imach.c 
  221: 	$(CC) $(CFLAGSOPT) -c -o imachcygopt.o imach.c
  222: strsep.o : strsep.c 
  223: 	$(CC) $(CFLAGSOPT) -c -o strsep.o strsep.c
  224: 
  225: imachw32.o : imach.c
  226: 	i386-mingw32-gcc -c imach.c -o imachw32.o
  227: imach.exe : imachw32.o 
  228: 	i386-mingw32-gcc  -mwindows -o imach.exe -lm imachw32.o
  229: 	i386-mingw32-strip imach.exe
  230: 
  231: valgrind-test :  imach $(TESTFILE) 
  232: 	valgrind  --dsymutil=yes --leak-check=full --show-leak-kinds=all --track-origins=yes ./imach $(TESTFILE)
  233: test:  imach $(TESTFILE) 
  234: 	gdb ./imach $(TESTFILE)
  235: 
  236: $(PARAM).htm: imach $(PARAM).imach data1.txt
  237: 	./imach $(PARAM).imach
  238: 
  239: clean: 
  240: 	rm or$(PARAM).txt er$(PARAM).txt pijr$(PARAM).txt plr$(PARAM).txt \
  241: 	r$(PARAM).txt tr$(PARAM).txt vpl$(PARAM).txt pr$(PARAM).txt \
  242: 	vr$(PARAM).txt *.gif imach.exe imach.o
  243: 
  244: 

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>