source: git/Singular/Makefile.in @ 1caa72

spielwiese
Last change on this file since 1caa72 was 1caa72, checked in by Olaf Bachmann <obachman@…>, 26 years ago
1998-04-06 Olaf Bachmann <obachman@mathematik.uni-kl.de> * spSpolyLoop.h: neww calling interface for spGetSpolyLoop * kstd1.cc (kNF): moved strat->ak field initailization out of initBuchMora into single routines * febase.cc (feGetSearchPath): added feGetSearchPath; changed algorithm for searching files: $SINGULARPATH -> relative to executable -> burnt-in locations * added find_exec.c to get absolute pathname of executable git-svn-id: file:///usr/local/Singular/svn/trunk@1341 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 17.1 KB
Line 
1#################################################################
2###
3### Makefile for Singular
4###
5#################################################################
6
7SHELL           = /bin/sh
8
9##
10## versions
11##
12SINGULAR_MAJOR_VERSION  = @SINGULAR_MAJOR_VERSION@
13SINGULAR_MINOR_VERSION  = @SINGULAR_MINOR_VERSION@
14DIST_NAME       = Singular-${SINGULAR_MAJOR_VERSION}.${SINGULAR_MINOR_VERSION}
15
16##
17## various paths
18##
19srcdir          = @srcdir@
20prefix          = @prefix@
21exec_prefix     = @exec_prefix@
22libdir          = @libdir@
23# program executable goes here
24bindir          = @bindir@
25# Singular libs go here
26singulardatadir = @singulardatadir@
27includedir      = @includedir@
28
29##
30## various programs
31##
32CC              = @CC@
33CXX             = @CXX@
34LEXP            = @LEXP@
35PERL            = @PERL@
36BISON           = bison
37@SET_MAKE@
38INSTALL         = ./install-sh -c
39INSTALL_PROGRAM = ${INSTALL}
40INSTALL_DATA    = ${INSTALL} -m 644
41MKINSTALLDIRS   = ./mkinstalldirs
42
43##
44## compiler and linker options
45##
46CFLAGS          = @CFLAGS@ -pipe
47CXXFLAGS        = @CXXFLAGS@ -pipe
48CXXTEMPLFLAGS   = @CXXTEMPLFLAGS@
49CPPFLAGS        = -I${srcdir} @CPPFLAGS@
50DEFS            = @DEFS@ -DNDEBUG
51LDFLAGS         = @LDFLAGS@
52STATIC_LDFLAGS  = @STATIC_LDFLAGS@
53LIBS            = @NEED_LIBS@
54
55##
56## subdirectories
57##
58# where the doumentation files are
59docdir          = doc
60# where the tests files are
61testdir         = tests
62
63##
64## the configuration
65##
66WITH_MP         = @WITH_MP@
67WITH_FACTORY    = @WITH_FACTORY@
68WITH_LIBFAC     = @WITH_LIBFAC@
69WITH_DBM        = @WITH_DBM@
70DOS_CROSS       = @DOS_CROSS@
71
72##
73## End configuration dependend stuff
74#################################################################
75
76###
77### file sets
78###
79
80CXXSOURCES=grammar.cc scanner.cc algmap.cc attrib.cc binom.cc clapconv.cc \
81    clapmem.cc clapsing.cc claptmpl.cc cntrlc.cc \
82    extra.cc febase.cc feread.cc \
83    ffields.cc hdegree.cc hilb.cc hutil.cc \
84    ideals.cc intvec.cc iparith.cc \
85    ipassign.cc ipconv.cc ipid.cc iplib.cc \
86    ipprint.cc ipshell.cc khstd.cc kstdfac.cc \
87    comm.cc kstd1.cc kstd2.cc kutil.cc lists.cc \
88    longalg.cc longrat.cc \
89    longrat0.cc maps.cc matpol.cc misc.cc \
90    mminit.cc modulop.cc \
91    fglm.cc fglmzero.cc fglmvec.cc fglmgauss.cc fglmhom.cc \
92    numbers.cc polys.cc polys0.cc polys1.cc polys-impl.cc \
93    ring.cc shortfl.cc silink.cc sing_mp.cc\
94    sing_dld.cc sing_dbm.cc spolys.cc spolys0.cc \
95    subexpr.cc syz.cc syz0.cc syz1.cc \
96    tesths.cc timer.cc weight.cc \
97    mpsr_Put.cc mpsr_PutPoly.cc mpsr_Tok.cc mpsr_GetPoly.cc \
98    mpsr_Get.cc mpsr_GetMisc.cc mpsr_Error.cc \
99    ndbm.cc spSpolyLoop.cc libparse.cc
100
101CSOURCES=mmalloc.c mmallocb.c mmallocs.c mmblock.c mmheap.c mmspec.c mmutil.c weight0.c find_exec.c
102
103SOURCES=${CSOURCES} ${CXXSOURCES} grammar.y scanner.l libparse.l spSpolyLoop.pl
104
105HEADERS=algmap.h hutil.h lists.h stairc.h attrib.h ideals.h \
106        longalg.h mpsr_Tok.h structs.h binom.h intvec.h longrat.h \
107        numbers.h stype.h clapconv.h ipconv.h maps.h page.h \
108        subexpr.h clapsing.h ipid.h matpol.h polys.h syz.h \
109        cntrlc.h ipprint.h mmemory.h ring.h timer.h \
110        febase.h ipshell.h mmprivat.h shortfl.h tok.h \
111        ffields.h khstd.h silink.h \
112        fglm.h comm.h kstd1.h modulop.h sing_dbm.h weight.h \
113        fglmgauss.h fglmvec.h kstd2.h mpsr.h sing_mp.h \
114        kstdfac.h mpsr_Get.h spolys.h \
115        kutil.h mpsr_Put.h spolys0.h \
116        ndbm.h spSpolyLoop.h polys-impl.h polys-comp.h
117
118TESTS=${testdir}/comparecheck ${testdir}/fac_test.in ${testdir}/fac_test.out\
119        ${testdir}/general_test.in ${testdir}/general_test.out \
120        ${testdir}/mpcheck ${testdir}/mpcheck.data \
121        ${testdir}/dbm_test.in ${testdir}/dbm_test.out
122
123DOCS=${docdir}/Makefile.in ${docdir}/copyright.tex ${docdir}/doc2tex.c \
124        ${docdir}/examples.doc ${docdir}/examples.tex ${docdir}/proc.tex \
125        ${docdir}/singular.doc ${docdir}/start.doc \
126        ${docdir}/start.tex ${docdir}/tutor.tex ${docdir}/singular.tex
127
128DISTFILES=${SOURCES} ${HEADERS} Makefile.in configure.in configure \
129        mod2.h.in grammar.h testgh install-sh mkinstalldirs \
130        ${TESTS} ${DOCS}
131
132OBJS=grammar.o scanner.o matpol.o binom.o\
133     febase.o feread.o timer.o intvec.o attrib.o lists.o\
134     longrat.o longrat0.o misc.o ring.o numbers.o maps.o\
135     hilb.o comm.o kstd1.o kstd2.o kutil.o khstd.o kstdfac.o modulop.o spolys.o\
136     ideals.o subexpr.o hdegree.o hutil.o ffields.o shortfl.o \
137     longalg.o spolys0.o syz.o syz0.o syz1.o weight.o weight0.o \
138     ipid.o ipshell.o iplib.o ipassign.o ipconv.o ipprint.o\
139     polys.o polys0.o polys1.o polys-impl.o extra.o\
140     mminit.o mmutil.o mmalloc.o mmallocb.o mmallocs.o \
141     mmspec.o mmblock.o mmheap.o sing_dld.o sing_dbm.o silink.o \
142     sing_mp.o fglm.o fglmzero.o fglmvec.o fglmhom.o fglmgauss.o cntrlc.o \
143     algmap.o clapconv.o  clapmem.o clapsing.o claptmpl.o\
144     mpsr_Error.o mpsr_Put.o mpsr_PutPoly.o mpsr_GetPoly.o \
145     mpsr_Get.o mpsr_GetMisc.o ndbm.o spSpolyLoop.o libparse.o \
146     find_exec.o
147
148##
149## PRIMARY Targets
150##
151
152
153.l.cc:
154        @if test "${LEXP}" = touch; then \
155                touch scanner.cc; \
156                echo Warning: could not rebuilt scanner.cc;\
157        else \
158                echo "${LEXP} -s -I -t $< > scanner.cc"; \
159                ${LEXP} -s -I -t $< > scanner.cc; \
160        fi
161.y.cc:
162        ${BISON} -d -t -o grammar.cc $<
163        chmod +x testgh
164        ./testgh
165
166.cc.o: 
167        ${CXX} ${CXXFLAGS} ${CXXTEMPLFLAGS} ${CPPFLAGS} ${DEFS} -c $<
168.c.o:
169        ${CC} ${CFLAGS} ${CPPFLAGS} ${DEFS} -c $<
170
171all:    Singular
172
173Singular: mod2.h Makefile version.h scanner.cc ${OBJS} iparith.o \
174                                        mpsr_Tok.o tesths.cc libparse.cc
175        ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${DEFS} -o Singular \
176        tesths.cc iparith.o mpsr_Tok.o ${OBJS} ${LDFLAGS} ${LIBS}
177
178Singular-static: mod2.h Makefile version.h scanner.cc ${OBJS} iparith.o \
179                                                mpsr_Tok.o tesths.cc
180        ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${DEFS} -o Singular-static \
181        tesths.cc iparith.o mpsr_Tok.o \
182        ${OBJS} ${STATIC_LDFLAGS} ${LDFLAGS} ${LIBS}
183
184
185iparith.o mpsr_Tok.o : iparith.inc mpsr_Tok.inc
186
187claptmpl.o: claptmpl.cc mod2.h
188        ${CXX} ${CXXFLAGS}  ${CPPFLAGS} ${DEFS} -c $<   
189
190iparith.inc mpsr_Tok.inc: iparith.cc ipconv.cc tok.h mpsr_Tok.cc grammar.h mod2.h
191        @if test "${DOS_CROSS}" = yes; then \
192                echo "NEED TO GENERATE inc FILES -- Please be patient" ;\
193                cd ..; \
194                ./configure.dos --generate-inc; \
195        else \
196                echo ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${DEFS} -DGENTABLE \
197                     -o gentable iparith.cc tesths.cc mpsr_Tok.cc \
198                     ${OBJS} ${LDFLAGS} ${LIBS};\
199                ${CXX} ${CXXFLAGS} ${CPPFLAGS} ${DEFS} -DGENTABLE \
200                     -o gentable iparith.cc tesths.cc mpsr_Tok.cc \
201                     ${OBJS} ${LDFLAGS} ${LIBS};\
202                echo ./gentable; \
203                ./gentable; \
204                echo /bin/rm gentable;\
205                /bin/rm gentable; \
206        fi
207
208
209version.h: ${SOURCES} ${HEADERS} Makefile.in mod2.h.in configure.in
210        echo "#define SINGULAR_VERSION_ID " `date '+%y%m%d%H'` >version.h
211
212mod2.h: stamp-h
213
214stamp-h : config.status mod2.h.in
215        CONFIG_FILES= CONFIG_HEADERS=mod2.h ./config.status
216
217spSpolyLoop.cc spSpolyLoop.dd : spSpolyLoop.inc
218
219spSpolyLoop.inc: spSpolyLoop.pl
220        ${PERL} spSpolyLoop.pl > spSpolyLoop.inc
221
222libparse: libparse_main.o utils.o
223        ${CXX} -o libparse libparse_main.o utils.o
224
225libparse_main.o: libparse.cc
226        ${CXX} -c -o libparse_main.o libparse.cc -DSTANDALONE_PARSER
227
228libparse.cc: libparse.l
229        @if test "${LEXP}" = touch; then \
230                touch libparse.cc; \
231                echo Warning: could not rebuilt libparse.cc;\
232        else \
233                echo ${LEXP} -I -Pyylp -olibparse.cc libparse.l;\
234                ${LEXP} -I -Pyylp -olibparse.cc libparse.l;\
235        fi
236
237Makefile: Makefile.in config.status
238        CONFIG_FILES="Makefile" CONFIG_HEADERS= ./config.status
239
240doc/Makefile: doc/Makefile.in config.status
241        CONFIG_FILES="doc/Makefile" CONFIG_HEADERS= ./config.status
242
243config.status: configure
244        ./config.status --recheck
245
246configure: configure.in
247        @echo "WARNING: You need to rerun autoconf. I am proceeding, for now."
248        @touch configure
249#       autoconf
250
251##
252## install targets
253##
254install: all installbin installdata installinfo
255
256installbin: Singular
257        ${MKINSTALLDIRS} ${bindir}
258        ${INSTALL_PROGRAM} Singular ${bindir}
259
260installdata:
261        ${MKINSTALLDIRS} ${singulardatadir}
262        ${MKINSTALLDIRS} ${singulardatadir}/gftables
263        for file in ${srcdir}/LIB/gftables/[0-9]*; do \
264                ${INSTALL_DATA} $${file} ${singulardatadir}/gftables; \
265        done
266        for file in ${srcdir}/LIB/*.lib; do \
267                ${INSTALL_DATA} $${file} ${singulardatadir}; \
268        done
269
270installinfo:
271        cd ${docdir}; ${MAKE} install
272
273uninstall: uninstallbin uninstalldata uninstallinfo
274
275uninstallbin:
276        -rm -f ${bindir}/Singular
277        -rmdir ${bindir}
278
279uninstalldata:
280        -rm -rf ${singulardatadir}/*.lib ${singulardatadir}/gftables
281        -rmdir ${singulardatadir}
282
283unistallinfo:
284        cd ${docdir}; ${MAKE} uninstall
285
286##
287## clean targest
288##
289mostlyclean: clean
290
291clean:
292        -rm -rf Singular* *.o *.og core *.d *.dd *~ \#* /tmp/mp* \
293                *.got *dump* *.diff *.dir *.pag
294        cd ${docdir}; ${MAKE} clean
295
296distclean: clean
297        -rm -rf depend iparith.inc mpsr_Tok.inc
298        -rm -rf ${DIST_NAME} ${testdir}/out stamp-h
299        -rm mod2.h Makefile TAGS* config.status config.cache config.log
300        cd ${docdir}; ${MAKE} distclean
301
302maintainer-clean: distclean
303        @echo "This command is intended for maintainers to use;"
304        @echo "Rebuilding the deleted files requires flex"
305        @echo "bison, perl and autoconf"
306        -rm configure scanner.cc grammar.h grammar.cc libparse.cc spSpolyLoop.inc
307
308info dvi ps html:
309        cd ${docdir}; ${MAKE} $@
310
311check:  Singular ${testdir}/general_test.in ${testdir}/general_test.out
312        - @ SINGULARPATH=`pwd`/LIB; export SINGULARPATH; \
313        PATH=`pwd`:${PATH}; export PATH;\
314        Singular=`pwd`/Singular; export Singular;\
315        ${testdir}/comparecheck ${testdir}/general_test.in ${testdir}/general_test.out
316        @ if test "${WITH_MP}" = yes; then ${MAKE} mpcheck; fi;
317        @ if test "${WITH_FACTORY}" = yes && test "${WITH_LIBFAC}" = yes; then \
318          ${MAKE} factorycheck;\
319        fi
320        @ if test "${WITH_DBM}" = yes; then ${MAKE} dbmcheck; fi
321
322
323mpcheck: Singular ${testdir}/mpcheck ${testdir}/mpcheck.data
324        - @ SINGULARPATH=`pwd`/LIB; export SINGULARPATH; \
325        PATH=`pwd`:${PATH}; export PATH;\
326        Singular=`pwd`/Singular; export Singular;\
327        ${testdir}/mpcheck ${testdir}/mpcheck.data
328
329factorycheck: Singular ${testdir}/comparecheck ${testdir}/fac_test.in \
330                ${testdir}/fac_test.out
331        - @ SINGULARPATH=`pwd`/LIB; export SINGULARPATH; \
332        PATH=`pwd`:${PATH}; export PATH;\
333        Singular=`pwd`/Singular; export Singular;\
334        ${testdir}/comparecheck ${testdir}/fac_test.in ${testdir}/fac_test.out
335
336dbmcheck: Singular ${testdir}/comparecheck ${testdir}/dbm_test.in \
337                ${testdir}/dbm_test.out
338        - @ SINGULARPATH=`pwd`/LIB; export SINGULARPATH; \
339        PATH=`pwd`:${PATH}; export PATH;\
340        Singular=`pwd`/Singular; export Singular;\
341        ${testdir}/comparecheck ${testdir}/dbm_test.in ${testdir}/dbm_test.out
342
343
344##
345## miscellanous targets
346##
347
348dist:
349        rm -rf ${DISTNAME}.tar* ${TEMPDIR}/${DISTNAME}*
350        mkdir ${TEMPDIR}/${DISTNAME}
351        - cp -pR . ${TEMPDIR}/${DISTNAME}
352        cd ${TEMPDIR}/${DISTNAME}; ${MAKE} distclean;
353        cd ${TEMPDIR}; tar cf ${DISTNAME}.tar ${DISTNAME}
354        rm -rf ${TEMPDIR}/${DISTNAME}
355        - gzip -9 ${TEMPDIR}/${DISTNAME}.tar
356        - mv ${TEMPDIR}/${DISTNAME}.tar.gz .
357
358TAGS:
359        etags ${SOURCES} ${HEADERS}
360
361##
362## Below here is stuff for developpers
363#################################################################
364
365##
366## compiler and linker options for debug version
367##
368
369CCG             = gcc
370CXXG            = gcc
371CXXM            = gcc -MM
372CCM             = gcc -MM
373
374CFLAGSG         = -g -Wall -Wno-unused -pipe
375CXXFLAGSG       = -g -Wall -Wno-unused -pipe
376CXXTEMPLFLAGSG  = -fno-implicit-templates
377DEFSG           = @DEFS@
378
379##
380## .og files for having -O and -g object versions available at the same time
381##
382
383OBJG1=  grammar.og scanner.og matpol.og binom.og\
384     febase.og feread.og timer.og intvec.og attrib.og lists.og\
385     longrat.og longrat0.og misc.og ring.og numbers.og maps.og\
386     hilb.og comm.og kstd1.og kstd2.og kutil.og khstd.og kstdfac.og modulop.og \
387     spolys.og ideals.og subexpr.og hdegree.og hutil.og ffields.og shortfl.og \
388     longalg.og spolys0.og syz.og syz0.og syz1.og weight.og \
389     ipid.og ipshell.og iplib.og ipassign.og ipconv.og ipprint.og\
390     polys.og polys0.og polys1.og polys-impl.og extra.og\
391     mminit.og sing_dld.og sing_dbm.og silink.og \
392     sing_mp.og fglm.og fglmzero.og fglmvec.og fglmgauss.og fglmhom.og\
393     algmap.og clapconv.og  clapmem.og clapsing.og \
394     cntrlc.og  \
395     mpsr_Error.og mpsr_Put.og mpsr_PutPoly.og mpsr_GetPoly.og \
396     mpsr_Get.og mpsr_GetMisc.og \
397     ndbm.og spSpolyLoop.og libparse.og \
398
399OBJG2= mmalloc.og mmallocb.og mmallocs.og mmblock.og mmheap.og \
400     mmspec.og mmutil.og weight0.og find_exec.og
401
402
403OBJG=$(OBJG1) $(OBJG2) claptmpl.og
404
405##
406## Debug Targets
407##
408
409claptmpl.og: claptmpl.cc mod2.h
410        $(CXXG)  ${CXXFLAGSG} ${CPPFLAGS} ${DEFSG} -c $< -o $@
411$(OBJG1): %.og: %.cc
412        $(CXXG) ${CXXFLAGSG} ${CXXTEMPLFLAGSG} ${CPPFLAGS} ${DEFSG} -c $< -o $@
413
414$(OBJG2): %.og: %.c
415        $(CCG)  ${CFLAGSG} ${CPPFLAGS} ${DEFSG} -c $< -o $@
416
417Singularg: scanner.cc $(OBJG) iparith.og mpsr_Tok.og tesths.cc version.h
418        $(CXXG) ${CXXFLAGSG} ${CPPFLAGS} ${DEFSG} -o Singularg \
419        tesths.cc iparith.og mpsr_Tok.og $(OBJG) ${LDFLAGS} ${LIBS}
420
421iparith.og: iparith.inc iparith.cc
422        $(CXXG)  ${CXXFLAGSG} ${CPPFLAGS} ${DEFSG} -c iparith.cc -o iparith.og
423
424mpsr_Tok.og: iparith.inc mpsr_Tok.cc
425        $(CXXG) ${CXXFLAGSG} ${CPPFLAGS} ${DEFSG} -c mpsr_Tok.cc -o mpsr_Tok.og
426
427installg: Singularg
428        ${MKINSTALLDIRS} ${bindir}
429        ${INSTALL_PROGRAM} Singularg ${bindir} 
430
431##
432## compiler and linker options for profile version
433##
434
435CCP             = gcc
436CXXP            = gcc
437
438CFLAGSP         = -pg -O3 -pipe 
439CXXFLAGSP       = -pg -O3 -pipe
440CXXTEMPLFLAGSP  = -fno-implicit-templates
441DEFSP           = @DEFS@ -DNDEBUG -DDO_PROFILE
442LDFLAGSP        = -static @LDFLAGS@
443
444CFLAGSB         = -g -O3 -pipe 
445CXXFLAGSB       = -g -O3 -pipe
446CXXTEMPLFLAGSB  = -fno-implicit-templates
447DEFSB           = @DEFS@ -DNDEBUG
448LDFLAGSB        = -static @LDFLAGS@
449# bprof object  file to link with
450BPROFOBJ        = /usr/local/lib/bmon.o
451
452
453##
454## .op files for gprof
455##
456
457OBJP1=  grammar.op scanner.op matpol.op binom.op\
458     febase.op feread.op timer.op intvec.op attrib.op lists.op\
459     longrat.op longrat0.op misc.op ring.op numbers.op maps.op\
460     hilb.op comm.op kstd1.op kstd2.op kutil.op khstd.op kstdfac.op modulop.op \
461     spolys.op ideals.op subexpr.op hdegree.op hutil.op ffields.op shortfl.op \
462     longalg.op spolys0.op syz.op syz0.op syz1.op weight.op \
463     ipid.op ipshell.op iplib.op ipassign.op ipconv.op ipprint.op\
464     polys.op polys0.op polys1.op polys-impl.op extra.op\
465     mminit.op sing_dld.op sing_dbm.op silink.op \
466     sing_mp.op fglm.op fglmzero.op fglmvec.op fglmgauss.op fglmhom.op\
467     algmap.op clapconv.op  clapmem.op clapsing.op \
468     cntrlc.op  \
469     mpsr_Error.op mpsr_Put.op mpsr_PutPoly.op mpsr_GetPoly.op \
470     mpsr_Get.op mpsr_GetMisc.op \
471     ndbm.op spSpolyLoop.op libparse.op
472
473OBJP2= mmalloc.op mmallocb.op mmallocs.op mmblock.op mmheap.op \
474     mmspec.op mmutil.op weight0.op find_exec.op
475
476OBJP=$(OBJP1) $(OBJP2) claptmpl.op
477
478##
479## .ob files for bprof
480##
481
482OBJB1=  grammar.ob scanner.ob matpol.ob binom.ob\
483     febase.ob feread.ob timer.ob intvec.ob attrib.ob lists.ob\
484     longrat.ob longrat0.ob misc.ob ring.ob numbers.ob maps.ob\
485     hilb.ob comm.ob kstd1.ob kstd2.ob kutil.ob khstd.ob kstdfac.ob modulop.ob \
486     spolys.ob ideals.ob subexpr.ob hdegree.ob hutil.ob ffields.ob shortfl.ob \
487     longalg.ob spolys0.ob syz.ob syz0.ob syz1.ob weight.ob \
488     ipid.ob ipshell.ob iplib.ob ipassign.ob ipconv.ob ipprint.ob\
489     polys.ob polys0.ob polys1.ob polys-impl.ob extra.ob\
490     mminit.ob sing_dld.ob sing_dbm.ob silink.ob \
491     sing_mp.ob fglm.ob fglmzero.ob fglmvec.ob fglmgauss.ob fglmhom.ob\
492     algmap.ob clapconv.ob  clapmem.ob clapsing.ob \
493     cntrlc.ob  \
494     mpsr_Error.ob mpsr_Put.ob mpsr_PutPoly.ob mpsr_GetPoly.ob \
495     mpsr_Get.ob mpsr_GetMisc.ob \
496     ndbm.ob spSpolyLoop.ob libparse.ob
497
498OBJB2= mmalloc.ob mmallocb.ob mmallocs.ob mmblock.ob mmheap.ob \
499     mmspec.ob mmutil.ob weight0.ob find_exec.ob
500
501OBJB=$(OBJB1) $(OBJB2) claptmpl.ob
502
503##
504## profile targets
505##
506
507## for gprof
508claptmpl.op: claptmpl.cc mod2.h
509        $(CXXP)  ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -c $< -o $@
510
511$(OBJP1): %.op: %.cc
512        $(CXXP) ${CXXFLAGSP} ${CXXTEMPLFLAGSP} ${CPPFLAGS} ${DEFSP} -c $< -o $@
513
514$(OBJP2): %.op: %.c
515        $(CCP)  ${CFLAGSP} ${CPPFLAGS} ${DEFSP} -c $< -o $@
516
517Singularp: scanner.cc $(OBJP) iparith.op mpsr_Tok.op tesths.cc version.h
518        $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -o Singularp \
519        tesths.cc iparith.op mpsr_Tok.op $(OBJP) ${LDFLAGSP} ${LIBS}
520
521iparith.op: iparith.inc iparith.cc
522        $(CXXP)  ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -c iparith.cc -o iparith.op
523
524mpsr_Tok.op: iparith.inc mpsr_Tok.cc
525        $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${DEFSP} -c mpsr_Tok.cc -o mpsr_Tok.op
526
527## for pbrof
528claptmpl.ob: claptmpl.cc mod2.h
529        $(CXXP)  ${CXXFLAGSB} ${CPPFLAGS} ${DEFSB} -c $< -o $@
530
531$(OBJB1): %.ob: %.cc
532        $(CXXP) ${CXXFLAGSB} ${CXXTEMPLFLAGSB} ${CPPFLAGS} ${DEFSB} -c $< -o $@
533
534$(OBJB2): %.ob: %.c
535        $(CCP)  ${CFLAGSB} ${CPPFLAGS} ${DEFSB} -c $< -o $@
536
537Singularb: scanner.cc $(OBJB) iparith.ob mpsr_Tok.ob tesths.cc version.h
538        $(CXXP) ${CXXFLAGSB} ${CPPFLAGS} ${DEFSB} -o Singularb \
539        tesths.cc iparith.ob mpsr_Tok.ob $(OBJB)  $(BPROFOBJ) \
540        ${LDFLAGSB} ${LIBS}
541
542iparith.ob: iparith.inc iparith.cc
543        $(CXXP)  ${CXXFLAGSB} ${CPPFLAGS} ${DEFSB} -c iparith.cc -o iparith.ob
544
545mpsr_Tok.ob: iparith.inc mpsr_Tok.cc
546        $(CXXP) ${CXXFLAGSB} ${CPPFLAGS} ${DEFSB} -c mpsr_Tok.cc -o mpsr_Tok.ob
547
548
549installp: Singularp
550        ${MKINSTALLDIRS} ${bindir}
551        ${INSTALL_PROGRAM} Singularp ${bindir} 
552
553
554##
555## dependencies
556##
557%.dd: %.cc mod2.h
558        echo $(@:.dd=.og) $(@:.dd=.op) $(@:.dd=.ob) " " \\ > $@
559        $(CXXM) -DGENTABLE ${CPPFLAGS} ${DEFSG} $< >> $@
560
561%.d: %.c mod2.h
562        echo $(@:.d=.og) $(@:.d=.op) $(@:.d=.ob) " " \\ > $@
563        $(CCM) ${CPPFLAGS} ${DEFSG} $< >> $@
564
565depend: $(CXXSOURCES:.cc=.dd) $(CSOURCES:.c=.d) mod2.h
566        cat *.d *.dd >depend
567
568#include $(SOURCES:.cc=.dd) $(CSOURCES:.c=.d)
569#include *.d *.dd
570ifeq (depend,$(wildcard depend))
571include depend
572endif
573
574
Note: See TracBrowser for help on using the repository browser.