Annotation of OpenXM/src/kan96xx/Kan/Makefile.in, Revision 1.12
1.12 ! takayama 1: ### $OpenXM: OpenXM/src/kan96xx/Kan/Makefile.in,v 1.11 2003/11/21 02:10:37 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.7 takayama 9: OpenXM_HOME=../../..
10: OpenXM_include=${OpenXM_HOME}/include
11: OpenXM_lib=${OpenXM_HOME}/lib
12:
13: CC=@CC@
14: RANLIB=@RANLIB@
15: LIBS=@LIBS@
16: LIBS2 = -L${OpenXM_lib} -lgmp -lgc -lox_pathfinder
1.1 takayama 17: #GC = nogc.c
18: #STATIC_LINK_FLAG = -static
19: STATIC_LINK_FLAG =
20:
21: #### Optimization level etc.
1.7 takayama 22: #### option for gdb CFLAGS = -g, optimize -O, profile -p, -DNOGC
23: CFLAGS = @CFLAGS@ -D_BSD_SOURCE
24:
1.10 takayama 25: YACC=yacc -d
1.1 takayama 26:
27: ################### Plugin modules
28: #### (2) cmo, file2, socket
29: PLUGIN = ../plugin
30: PLUGIN_PROTOTYPE = $(PLUGIN)/mathcap.h $(PLUGIN)/file2.h $(PLUGIN)/sm1Socket.h $(PLUGIN)/cmo.h $(PLUGIN)/ox.h
31: PLUGIN_LIB = $(PLUGIN)/sm1Socket.a $(PLUGIN)/cmo.a $(PLUGIN)/file2.a $(PLUGIN)/ox.a
32: PLUGIN_EXT = $(PLUGIN)/file2.hh $(PLUGIN)/sm1Socket.hh $(PLUGIN)/cmo.hh $(PLUGIN)/ox.hh
33: PLUGIN_SM1 = $(PLUGIN)/sm1Socket.sm1 $(PLUGIN)/file2.sm1 $(PLUGIN)/cmo.sm1 $(PLUGIN)/oxx.sm1
34: PLUGIN_LINKFLAG =
35: ############################ end of configuration ########################
36:
1.7 takayama 37: configure: Makefile
38:
39: Makefile: Makefile.in
1.8 takayama 40: sh ./configure
1.7 takayama 41:
42:
1.1 takayama 43: HEADERS = datatype.h stackm.h lookup.h extern.h kclass.h
44: .c.o :
1.7 takayama 45: ${CC} -I${OpenXM_include} ${CFLAGS} ${DDD} -c $<
1.1 takayama 46:
47: kanlibP = kanExport0.o kanExport1.o
48: kanlibS1 = stackmachine.o
49: kanlibS2 = scanner.o scanner2.o list.o global.o kclass.o
50: kanlibS3 = usage.o option.o
51: kanlibS4 = primitive.o
1.2 takayama 52: 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 53: kanlibK2 = gradedset.o red.o gb.o gbGM.o syz0.o redm.o sugar.o resol.o hilbert.o ecart.o
1.11 takayama 54: kanlibKclass = Kclass/sample.o Kclass/rawcmo.o Kclass/indeterminate.o Kclass/tree.o
1.1 takayama 55:
56: ##### Add also to Kclass/Makefile
57: Kclass/sample.o : $(HEADERS) Kclass/sample.c
1.7 takayama 58: (cd Kclass ; make CC=${CC} OpenXM_HOME=../${OpenXM_HOME} CFLAGS='${CFLAGS}' sample.o )
1.1 takayama 59: Kclass/rawcmo.o : $(HEADERS) Kclass/rawcmo.c
1.7 takayama 60: (cd Kclass ; make CC=${CC} OpenXM_HOME=../${OpenXM_HOME} CFLAGS='${CFLAGS}' rawcmo.o )
1.1 takayama 61: Kclass/indeterminate.o : $(HEADERS) Kclass/indeterminate.c
1.7 takayama 62: (cd Kclass ; make CC=${CC} OpenXM_HOME=../${OpenXM_HOME} CFLAGS='${CFLAGS}' indeterminate.o )
1.11 takayama 63: Kclass/tree.o : $(HEADERS) Kclass/tree.c
64: (cd Kclass ; make CC=${CC} OpenXM_HOME=../${OpenXM_HOME} CFLAGS='${CFLAGS}' tree.o )
1.1 takayama 65:
66:
67: ######
68: redm.o : extern2.h gradedset.h $(HEADERS)
69: sugar.o : extern2.h gradedset.h $(HEADERS)
70: syz0.o : extern2.h gradedset.h $(HEADERS)
71: resol.o : extern2.h gradedset.h $(HEADERS)
72: hilbert.o : extern2.h gradedset.h $(HEADERS)
73: gbGM.o : extern2.h gradedset.h $(HEADERS)
74: gb.o : extern2.h gradedset.h $(HEADERS)
75: red.o : extern2.h gradedset.h $(HEADERS)
76: gradedset.o : extern2.h gradedset.h $(HEADERS)
1.4 takayama 77: ecart.o : extern2.h gradedset.h $(HEADERS)
1.1 takayama 78:
79: ########
80: matrix.o : extern2.h matrix.h $(HEADERS)
81: poly4.o : extern2.h matrix.h $(HEADERS)
82: replace3.o : extern2.h $(HEADERS)
83: poly3.o : extern2.h $(HEADERS)
1.2 takayama 84: poly3a.o : extern2.h $(HEADERS)
1.1 takayama 85: parserpass0.o : extern2.h $(HEADERS)
86: parser.o : extern2.h $(HEADERS)
87: poly2.o : extern2.h $(HEADERS)
88: switch.o : extern2.h $(HEADERS) gradedset.h
89: order.o : extern2.h $(HEADERS)
90: coeff.o : extern2.h $(HEADERS)
91: output.o : extern2.h $(HEADERS)
92: poly.o : extern2.h $(HEADERS)
93: rat.o : extern2.h $(HEADERS)
1.12 ! takayama 94: ext.o : extern2.h $(HEADERS) plugin.h plugin.hh Kclass/tree.hh
1.7 takayama 95: sm.o : sm.c $(HEADERS)
1.1 takayama 96:
1.7 takayama 97: sm1 : sm.o $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB)
98: ${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 99:
100:
101: $(kanlibP) : $(HEADERS) gradedset.h extern2.h
102: $(kanlibS1) : $(HEADERS) smacro.h gradedset.h
103: $(kanlibS2) : $(HEADERS) gradedset.h extern2.h
104: $(kanlibS3) : $(HEADERS) gradedset.h extern2.h
105: $(kanlibS4) : $(HEADERS) gradedset.h
106:
107:
1.5 takayama 108: kanlib.a : $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) $(PLUGIN_LIB) kanlib.o ${OpenXM_lib}/libox_pathfinder.a
1.1 takayama 109: (cd plugin-tmp; /bin/rm -f *.o; ../ar-decomp $(PLUGIN_LIB) ; cp ../kanlib.o .)
1.5 takayama 110: (cd plugin-tmp; ../ar-decomp ${OpenXM_lib}/libox_pathfinder.a)
1.1 takayama 111: ar ru kanlib.a $(kanlibS1) $(kanlibS2) $(kanlibS3) $(kanlibS4) $(kanlibP) $(kanlibK) $(kanlibK2) $(kanlibKclass) plugin-tmp/*.o
1.7 takayama 112: ${RANLIB} kanlib.a
1.1 takayama 113:
114: ############ smacro.h and lookup.h
115: smacro.h : smacro.sm1 dr.sm1 module1.sm1 sugar.sm1 usage.sm1 mm $(PLUGIN_SM1)
116: touch smacro.h
117: /bin/rm smacro.h
118: cat smacro.sm1 dr.sm1 module1.sm1 sugar.sm1 usage.sm1 $(PLUGIN_SM1) | ./mm >smacro.h
119:
120: lookup.h : stackm.h mklookup
121: touch lookup.h
122: /bin/rm lookup.h
123: ./mklookup >lookup.h
124:
125: mm : mm.c
126: $(CC) -o mm mm.c
127: mklookup : mklookup.c
128: $(CC) -I$(OpenXM_include) -o mklookup mklookup.c
129:
130:
131: ############### plugins
132: plugin.hh : Makefile $(PLUGIN_EXT)
133: rm -f plugin.hh
134: echo '/* Do not edit this file. */' > plugin.hh
135: ./cat0 $(PLUGIN_EXT) >>plugin.hh
136:
137: plugin.h : Makefile $(PLUGIN_PROTOTYPE)
138: rm -f plugin.h
139: echo '/* Do not edit this file. */' > plugin.h
140: ./cat0 $(PLUGIN_PROTOTYPE) >>plugin.h
141:
142: plugin.sm1 : Makefile $(PLUGIN_SM1)
143: rm -f plugin.sm1
144: echo '%% Do not edit this file.' > plugin.sm1
145:
1.10 takayama 146: ## Data converters
147: kanlibConverter=yylex_polymake.o yy_polymake.tab.o
148:
149: polymake2tfb: yymain_polymake.o yylex_polymake.o yy_polymake.tab.o
150: ${CC} $(CFLAGS) -o polymake2tfb yymain_polymake.o yylex_polymake.o yy_polymake.tab.o -L${OpenXM_lib} -lgc
151: yymain_polymake.o:yymain_polymake.c yy_polymake.tab.h
152: yylex_polymake.o:yylex_polymake.c yylex_polymake.h yy_polymake.tab.h
153: yy_polymake.tab.o : yy_polymake.tab.c
154: yy_polymake.tab.c : yy_polymake.y yylex_polymake.h
155: ${YACC} -b yy_polymake -p PM yy_polymake.y
156: yy_polymake.tab.h : yy_polymake.y yylex_polymake.h
157: ${YACC} -b yy_polymake -p PM yy_polymake.y
1.1 takayama 158:
159: clean :
160: 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 161: distclean : clean
162: rm -f Makefile
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>