source: git/libfac/Makefile.in @ be6689f

spielwiese
Last change on this file since be6689f was be6689f, checked in by Hans Schönemann <hannes@…>, 14 years ago
new target install_all to install ALL libs git-svn-id: file:///usr/local/Singular/svn/trunk@12477 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 5.1 KB
Line 
1# $Id$
2#################################################
3SHELL           = /bin/sh
4RM              = -rm -f
5#################################################
6TARGETNAME              = @targetname@
7LIBFACNAME              = @libfac_name@
8LIBFACVERSION           = @libfac_version@
9LIBFACDATE              = @libfac_date@
10LIBFACAUTHOR            = @libfac_author@
11LIBFACNAME              = @libfac@
12SINGLIBFACNAME          = @libsingfac@
13LIBFACINCLUDE           = @factorH@
14#################################################
15##
16## various paths
17##
18srcdir          = @srcdir@
19prefix          = @prefix@
20exec_prefix     = @exec_prefix@
21libdir          = @libdir@
22includedir      = @includedir@
23
24##
25## various programs
26##
27AR              = @AR@ cr
28RANLIB          = @RANLIB@
29CXX             = @CXX@
30INSTALL         = ./install-sh -c
31INSTALL_DATA    = ${INSTALL} -m 644
32INSTALL_PROGRAM = ${INSTALL}
33MKINSTALLDIRS   = ./mkinstalldirs
34
35##
36## compiler and linker options
37##
38CXXFLAGS        = @CXXFLAGS@
39CXXTEMPLFLAGS   = @CXXTEMPLFLAGS@
40CPPFLAGS        = -I${srcdir}/factor -I${srcdir}/charset -I${srcdir} @CPPFLAGS@
41DEFS            = @DEFS@
42LDFLAGS         = @LDFLAGS@
43LIBS            = -lfac -lcf -lcfmem -lgmp @LIBS@
44
45##
46## src and objects
47##
48
49FACTORSRC1 =    factor/SqrFree.cc factor/Factor.cc \
50                factor/MVMultiHensel.cc factor/Truefactor.cc \
51                factor/helpstuff.cc  factor/version.cc \
52                factor/homogfactor.cc
53FACTORSRC2 =    factor/tmpl_inst.cc
54FACTORSRC =     $(FACTORSRC2) $(FACTORSRC1)
55
56CHARSETSRC1 =   charset/csutil.cc charset/charset.cc charset/reorder.cc
57CHARSETSRC =    $(CHARSETSRC1)
58
59FACTORINCL =    factor/Factor.h factor/MVMultiHensel.h factor/Truefactor.h \
60                factor/tmpl_inst.h factor/SqrFree.h factor/helpstuff.h \
61                factor/debug.h factor/timing.h factor/homogfactor.h \
62                factor/interrupt.h
63CHARSETINCL =   charset/csutil.h charset/charset.h charset/reorder.h \
64                charset/alg_factor.h charset/algfactor.h
65
66OPTFACTOROBJ1 = OPTOBJ/SqrFree.o OPTOBJ/Factor.o OPTOBJ/MVMultiHensel.o \
67                OPTOBJ/Truefactor.o OPTOBJ/helpstuff.o OPTOBJ/version.o \
68                OPTOBJ/homogfactor.o
69OPTFACTOROBJ2 = OPTOBJ/tmpl_inst.o
70OPTFACTOROBJ =  $(OPTFACTOROBJ2) $(OPTFACTOROBJ1)
71
72OPTCHARSETOBJ = OPTOBJ/csutil.o OPTOBJ/charset.o OPTOBJ/reorder.o \
73                OPTOBJ/alg_factor.o OPTOBJ/algfactor.o
74
75DEBOBJ = $(OPTFACTOROBJ1:%.o=%.og) $(OPTCHARSETOBJ:%.o=%.og)
76PROFOBJ = $(OPTFACTOROBJ1:%.o=%.op) $(OPTCHARSETOBJ:%.o=%.op)
77
78##
79## Primary targets
80##
81
82.SUFFIXES:      .cc .h .o .op .og
83
84all: OPTOBJ ${TARGETNAME} libsingfac_g.a
85
86OPTOBJ:
87        ${MKINSTALLDIRS} OPTOBJ
88
89OPTOBJ/%.o: %.cc
90        $(CXX) $(CXXFLAGS) $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
91
92OPTOBJ/%.o: charset/%.cc
93        $(CXX) $(CXXFLAGS) $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
94
95OPTOBJ/%.o: factor/%.cc
96        $(CXX) $(CXXFLAGS) $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
97
98OPTOBJ/tmpl_inst.o: factor/tmpl_inst.cc
99        $(CXX) $(CXXFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
100
101OPTOBJ/%.op: %.cc
102        $(CXX) -O -pg $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
103
104OPTOBJ/%.op: charset/%.cc
105        $(CXX) -O -pg $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
106
107OPTOBJ/%.op: factor/%.cc
108        $(CXX) -O -pg $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
109
110OPTOBJ/tmpl_inst.op: factor/tmpl_inst.cc
111        $(CXX) -O -pg $(CPPFLAGS) $(DEFS) -c $< -o $@
112
113OPTOBJ/%.og: %.cc
114        $(CXX) -g $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
115
116OPTOBJ/%.og: charset/%.cc
117        $(CXX) -g $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
118
119OPTOBJ/%.og: factor/%.cc
120        $(CXX) -g $(CXXTEMPLFLAGS) $(CPPFLAGS) $(DEFS) -c $< -o $@
121
122OPTOBJ/tmpl_inst.og: factor/tmpl_inst.cc
123        $(CXX) -g $(CPPFLAGS) $(DEFS) -c $< -o $@
124
125libfac:         libfac.a
126
127libsingfac:     libsingfac.a
128
129libsingfac_g:   libsingfac_g.a
130
131libfac.a:       $(OPTFACTOROBJ) $(OPTCHARSETOBJ)
132                $(AR) ${LIBFACNAME}.a $(OPTFACTOROBJ) $(OPTCHARSETOBJ)
133                $(RANLIB) ${LIBFACNAME}.a
134
135libsingfac.a:   $(OPTFACTOROBJ1) $(OPTCHARSETOBJ)
136                $(AR) ${SINGLIBFACNAME}.a $(OPTFACTOROBJ1) $(OPTCHARSETOBJ)
137                $(RANLIB) ${SINGLIBFACNAME}.a
138
139libsingfac_g.a: $(DEBOBJ)
140                $(AR) $@ $^
141                $(RANLIB) $@
142
143libsingfac_p.a: $(PROFOBJ)
144                $(AR) $@ $^
145                $(RANLIB) $@
146
147install-nolns: install
148
149install:        all
150        ${MKINSTALLDIRS} ${includedir}
151        ${MKINSTALLDIRS} ${libdir}
152        ${INSTALL_DATA} ${LIBFACINCLUDE} ${includedir}
153        ${INSTALL_DATA} ${TARGETNAME}.a ${libdir}
154        -${INSTALL_DATA} libsingfac_g.a ${libdir}
155        $(RANLIB) ${libdir}/${TARGETNAME}.a
156        -$(RANLIB) ${libdir}/libsingfac_g.a
157
158install_all: install libsingfac_p.a
159        -${INSTALL_DATA} libsingfac_p.a ${libdir}
160        -$(RANLIB) ${libdir}/libsingfac_p.a
161
162uninstall:
163        $(RM) ${includedir}/${LIBFACINCLUDE}
164        $(RM) ${libdir}/${LIBFACNAME}.a
165        $(RM) ${libdir}/${SINGLIBFACNAME}.a
166
167mostlyclean:
168        $(RM)   test testcs ${LIBFACNAME}.a ${SINGLIBFACNAME}.a \
169                libsingfac_g.a libsingfac_p.a
170
171clean:  mostlyclean
172        $(RM) OPTOBJ/optdepend OPTOBJ/debdepend  \
173              OPTOBJ/*.op OPTOBJ/*.og OPTOBJ/*.o
174
175distclean:      clean
176        $(RM) config.cache config.log config.status Makefile
177
178dist:   distclean
179        $(RM) ../libfac-${LIBFACVERSION}.tgz
180        (cd .. ; gtar -zcvf libfac-${LIBFACVERSION}.tgz libfac-${LIBFACVERSION})
181
182########## From here on: Only for internal use!
183#################################################
184
185factest:        libfac OPTOBJ/test.o   
186                $(CXX) -o test $(LDFLAGS) OPTOBJ/test.o $(LIBS)
187
188factests:       factest
189                (cd tests ; factortest )
190
191charsettest:    libfac  OPTOBJ/testcs.o
192                $(CXX) -o testcs $(LDFLAGS) OPTOBJ/testcs.o $(LIBS)
193
194#charsettests:  charsettest
195#               (cd tests ; charsettest )
196
197tests:          factests
198
Note: See TracBrowser for help on using the repository browser.