Annotation of OpenXM/src/kan96xx/Kan/Makefile.in, Revision 1.25
1.25 ! takayama 1: ### $OpenXM: OpenXM/src/kan96xx/Kan/Makefile.in,v 1.24 2016/09/20 04:47:36 takayama Exp $
1.7 takayama 2: #
3: # depends on install-gmp, install-gc [install-asir-gc]
4: # ( cd ../plugin ; make )
5: #
6: all : configure sm1
1.1 takayama 7: # .SUFFIXES:
8: ########################## configuration ##############################
1.19 takayama 9: OpenXM_HOME=@prefix@
1.7 takayama 10: OpenXM_include=${OpenXM_HOME}/include
11: OpenXM_lib=${OpenXM_HOME}/lib
1.19 takayama 12: #
13: OpenXM_HOME_debug=../../..
14: OpenXM_include_debug=${OpenXM_HOME_debug}/include
15: OpenXM_lib_debug=${OpenXM_HOME_debug}/lib
1.7 takayama 16:
1.22 takayama 17: AR=@AR@
1.7 takayama 18: CC=@CC@
19: RANLIB=@RANLIB@
20: LIBS=@LIBS@
1.23 takayama 21: LIBS2_SHARED = -L${OpenXM_lib} -lgmp -lgc -lox_pathfinder
1.24 takayama 22: LIBS2_STATIC = -L${OpenXM_lib} ${OpenXM_lib}/libgmp.a ${OpenXM_lib}/libgc.a -lox_pathfinder -Wl,-no_pie
1.23 takayama 23: LIBS2 = @LIBS2@
1.1 takayama 24: #GC = nogc.c
25: #STATIC_LINK_FLAG = -static
26: STATIC_LINK_FLAG =
27:
28: #### Optimization level etc.
1.7 takayama 29: #### option for gdb CFLAGS = -g, optimize -O, profile -p, -DNOGC
1.25 ! takayama 30: CFLAGS = @CFLAGS@ -D_DEFAULT_SOURCE -D_BSD_SOURCE -Wno-trigraphs
1.7 takayama 31:
1.1 takayama 32: ################### Plugin modules
33: #### (2) cmo, file2, socket
34: PLUGIN = ../plugin
1.14 takayama 35: TRANS = ../trans
1.21 takayama 36: PLUGIN_PROTOTYPE = $(PLUGIN)/mathcap.h $(PLUGIN)/file2.h $(PLUGIN)/sm1Socket.h $(PLUGIN)/cmo.h $(PLUGIN)/ox.h $(PLUGIN)/oxxml.h $(PLUGIN)/oxcgi.h $(TRANS)/trans.h
37: PLUGIN_LIB = $(PLUGIN)/sm1Socket.a $(PLUGIN)/cmo.a $(PLUGIN)/file2.a $(PLUGIN)/ox.a $(PLUGIN)/oxxml.a $(PLUGIN)/oxcgi.a $(TRANS)/trans.a
38: PLUGIN_EXT = $(PLUGIN)/file2.hh $(PLUGIN)/sm1Socket.hh $(PLUGIN)/cmo.hh $(PLUGIN)/ox.hh $(PLUGIN)/oxxml.hh $(PLUGIN)/oxcgi.hh $(TRANS)/trans.hh
1.18 takayama 39: PLUGIN_SM1 = $(PLUGIN)/sm1Socket.sm1 $(PLUGIN)/file2.sm1 $(PLUGIN)/cmo.sm1 $(PLUGIN)/oxx.sm1 $(TRANS)/trans.sm1 $(TRANS)/polymake.sm1
1.1 takayama 40: PLUGIN_LINKFLAG =
41: ############################ end of configuration ########################
42:
1.7 takayama 43: configure: Makefile
44:
45: Makefile: Makefile.in
1.19 takayama 46: sh ./configure --prefix=@prefix@
1.7 takayama 47:
48:
1.1 takayama 49: HEADERS = datatype.h stackm.h lookup.h extern.h kclass.h
50: .c.o :
1.7 takayama 51: ${CC} -I${OpenXM_include} ${CFLAGS} ${DDD} -c $<
1.1 takayama 52:
53: kanlibP = kanExport0.o kanExport1.o
54: kanlibS1 = stackmachine.o
1.15 takayama 55: kanlibS2 = scanner.o scanner2.o list.o global.o kclass.o shell.o
1.1 takayama 56: kanlibS3 = usage.o option.o
57: kanlibS4 = primitive.o
1.2 takayama 58: kanlibK = matrix.o poly4.o replace.o poly3.o poly3a.o poly.o output.o coeff.o order.o switch.o poly2.o parser.o parserpass0.o rat.o ext.o
1.4 takayama 59: kanlibK2 = gradedset.o red.o gb.o gbGM.o syz0.o redm.o sugar.o resol.o hilbert.o ecart.o
1.11 takayama 60: kanlibKclass = Kclass/sample.o Kclass/rawcmo.o Kclass/indeterminate.o Kclass/tree.o
1.1 takayama 61:
62: ##### Add also to Kclass/Makefile
63: Kclass/sample.o : $(HEADERS) Kclass/sample.c
1.19 takayama 64: (cd Kclass ; make CC=${CC} OpenXM_HOME=@prefix@ CFLAGS='${CFLAGS}' sample.o )
1.1 takayama 65: Kclass/rawcmo.o : $(HEADERS) Kclass/rawcmo.c
1.19 takayama 66: (cd Kclass ; make CC=${CC} OpenXM_HOME=@prefix@ CFLAGS='${CFLAGS}' rawcmo.o )
1.1 takayama 67: Kclass/indeterminate.o : $(HEADERS) Kclass/indeterminate.c
1.19 takayama 68: (cd Kclass ; make CC=${CC} OpenXM_HOME=@prefix@ CFLAGS='${CFLAGS}' indeterminate.o )
1.11 takayama 69: Kclass/tree.o : $(HEADERS) Kclass/tree.c
1.19 takayama 70: (cd Kclass ; make CC=${CC} OpenXM_HOME=@prefix@ CFLAGS='${CFLAGS}' tree.o )
1.1 takayama 71:
72:
73: ######
74: redm.o : extern2.h gradedset.h $(HEADERS)
75: sugar.o : extern2.h gradedset.h $(HEADERS)
76: syz0.o : extern2.h gradedset.h $(HEADERS)
77: resol.o : extern2.h gradedset.h $(HEADERS)
78: hilbert.o : extern2.h gradedset.h $(HEADERS)
79: gbGM.o : extern2.h gradedset.h $(HEADERS)
80: gb.o : extern2.h gradedset.h $(HEADERS)
81: red.o : extern2.h gradedset.h $(HEADERS)
82: gradedset.o : extern2.h gradedset.h $(HEADERS)
1.4 takayama 83: ecart.o : extern2.h gradedset.h $(HEADERS)
1.1 takayama 84:
85: ########
86: matrix.o : extern2.h matrix.h $(HEADERS)
87: poly4.o : extern2.h matrix.h $(HEADERS)
88: replace3.o : extern2.h $(HEADERS)
89: poly3.o : extern2.h $(HEADERS)
1.2 takayama 90: poly3a.o : extern2.h $(HEADERS)
1.1 takayama 91: parserpass0.o : extern2.h $(HEADERS)
92: parser.o : extern2.h $(HEADERS)
93: poly2.o : extern2.h $(HEADERS)
94: switch.o : extern2.h $(HEADERS) gradedset.h
95: order.o : extern2.h $(HEADERS)
96: coeff.o : extern2.h $(HEADERS)
97: output.o : extern2.h $(HEADERS)
98: poly.o : extern2.h $(HEADERS)
99: rat.o : extern2.h $(HEADERS)
1.17 takayama 100: ext.o : extern2.h $(HEADERS) plugin.h plugin.hh Kclass/tree.hh
1.7 takayama 101: sm.o : sm.c $(HEADERS)
1.16 takayama 102: shell.o : shell.c $(HEADERS) plugin.h
1.1 takayama 103:
1.7 takayama 104: sm1 : sm.o $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB)
105: ${CC} -I${OpenXM_include} $(CFLAGS) -o sm1 sm.o $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB) $(PLUGIN_LINKFLAG) $(LIBS2) $(LIBS)
1.1 takayama 106:
107:
108: $(kanlibP) : $(HEADERS) gradedset.h extern2.h
109: $(kanlibS1) : $(HEADERS) smacro.h gradedset.h
110: $(kanlibS2) : $(HEADERS) gradedset.h extern2.h
111: $(kanlibS3) : $(HEADERS) gradedset.h extern2.h
112: $(kanlibS4) : $(HEADERS) gradedset.h
113:
114:
1.5 takayama 115: kanlib.a : $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB) kanlib.o ${OpenXM_lib}/libox_pathfinder.a
1.1 takayama 116: (cd plugin-tmp; /bin/rm -f *.o; ../ar-decomp $(PLUGIN_LIB) ; cp ../kanlib.o .)
1.20 takayama 117: (cd plugin-tmp; ../ar-decomp2 ${OpenXM_lib}/libox_pathfinder.a)
1.22 takayama 118: if [ ${AR} = ar ]; then \
119: ar ru kanlib.a $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) plugin-tmp/*.o ; \
120: else \
121: libtool -static -o kanlib.a $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB) ${OpenXM_lib}/libox_pathfinder.a ; \
122: fi
1.7 takayama 123: ${RANLIB} kanlib.a
1.1 takayama 124:
125: ############ smacro.h and lookup.h
126: smacro.h : smacro.sm1 dr.sm1 module1.sm1 sugar.sm1 usage.sm1 mm $(PLUGIN_SM1)
127: touch smacro.h
128: /bin/rm smacro.h
129: cat smacro.sm1 dr.sm1 module1.sm1 sugar.sm1 usage.sm1 $(PLUGIN_SM1) | ./mm >smacro.h
130:
131: lookup.h : stackm.h mklookup
132: touch lookup.h
133: /bin/rm lookup.h
134: ./mklookup >lookup.h
135:
136: mm : mm.c
137: $(CC) -o mm mm.c
138: mklookup : mklookup.c
139: $(CC) -I$(OpenXM_include) -o mklookup mklookup.c
140:
141:
142: ############### plugins
143: plugin.hh : Makefile $(PLUGIN_EXT)
144: rm -f plugin.hh
145: echo '/* Do not edit this file. */' > plugin.hh
146: ./cat0 $(PLUGIN_EXT) >>plugin.hh
147:
148: plugin.h : Makefile $(PLUGIN_PROTOTYPE)
149: rm -f plugin.h
150: echo '/* Do not edit this file. */' > plugin.h
151: ./cat0 $(PLUGIN_PROTOTYPE) >>plugin.h
152:
153: plugin.sm1 : Makefile $(PLUGIN_SM1)
154: rm -f plugin.sm1
155: echo '%% Do not edit this file.' > plugin.sm1
156:
157: clean :
158: rm -f mklookup mm core sm1 lookup.h smacro.h *.o *~ *.a mon.out sm1.nogc kanlib.a plugin.h plugin.hh plugin-tmp/*.o Kclass/*.o Kclass/*~ makeconf makeconf.sed
1.9 takayama 159: distclean : clean
160: rm -f Makefile
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>