source: git/Makefile.in @ ffc0b6

spielwiese
Last change on this file since ffc0b6 was ffc0b6, checked in by Olaf Bachmann <obachman@…>, 26 years ago
* cosmetic changes git-svn-id: file:///usr/local/Singular/svn/trunk@2181 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 7.9 KB
Line 
1#################################################################
2###
3### Top-level Makefile for Singular
4###
5### The main purpose of this Makefile is to call `make'
6### recursively in the subdirectories determined at configuration
7### time.
8###
9#################################################################
10
11@SET_MAKE@
12SHELL           = /bin/sh
13
14SINGULAR        = @SINGULAR@
15
16BUILD_SUBDIRS   = @CONFIG_SUBDIRS@
17SUBDIRS         = @SUBDIRS@
18
19PERL            = @PERL@
20
21##############################################################
22# default target
23${SINGULAR}:
24        ${MAKE} install
25
26##############################################################
27# general targets
28# simply descend for these targets
29.PHONY: all install uninstall
30
31all install uninstall:
32        @ for SUBDIR in ${BUILD_SUBDIRS}; \
33        do \
34          echo ${MAKE} $@ in $${SUBDIR}; \
35          ( cd $${SUBDIR} && ${MAKE} $@; ) \
36        done
37
38##############################################################
39# cleaning up
40.PHONY: local-clean local-distclean local-maintainer-clean \
41        clean distclean mostlyclean maintainer-clean
42
43# we use a canned sequence to avoid code redundancy
44define recurse
45@ for SUBDIR in ${SUBDIRS}; \
46do \
47  echo ${MAKE} $@ in $${SUBDIR}; \
48  ( cd $${SUBDIR} && ${MAKE} $@; ) \
49done
50endef
51
52local-clean:
53        rm -rf *~ a.out core *.o *.log
54
55local-distclean: local-clean
56        rm -rf Makefile config.cache config.log config.status TAGS* *.gz *.tar
57
58local-maintainer-clean: local-distclean
59        @ echo "This command is intended for maintainer use, only"
60        rm -rf configure
61
62clean mostlyclean: uninstall local-clean
63        $(recurse)
64
65distclean: uninstall local-distclean
66        $(recurse)
67
68maintainer-clean: uninstall local-maintainer-clean
69        $(recurse)
70
71##############################################################
72# some extra targets for the specific packages
73.PHONY: factory libfac MP gmp smallgmp
74Singular factory libfac MP gmp smallgmp:
75        cd $@; ${MAKE} all
76
77##############################################################
78# documentation
79.PHONY: info dvi ps doc doc/singular.hlp html
80
81info dvi ps doc/singular.hlp html: ${SINGULAR}
82        cd doc; ${MAKE} $@
83
84doc info/singular.hlp:
85        cd doc; ${MAKE} install
86
87##############################################################
88# Tst targets
89.PHONY: Tst-All Tst Tst-Old Tst-Short Tst-Long
90Tst-All: Tst-Old Tst-Short Tst-Long
91
92Tst: Tst-Old Tst-Short
93
94Tst-Old: ${SINGULAR} Tst/Old/universal.lst Tst/regress.cmd
95        ${PERL} Tst/regress.cmd -s ${SINGULAR} Tst/Old/universal.lst
96
97Tst-Short: ${SINGULAR} Tst/Short Tst/regress.cmd
98        ${PERL} Tst/regress.cmd -s ${SINGULAR} Tst/Short/*.tst
99
100Tst-Long:  ${SINGULAR} Tst/Short Tst/regress.cmd
101        ${PERL} Tst/regress.cmd -s ${SINGULAR} Tst/Long/*.tst
102
103
104
105
106##############################################################
107# distribution targets
108LN_S            = @LN_S@
109MKINSTALLDIRS   = ./mkinstalldirs
110TMPDIR          = /tmp/singdist
111SINGUNAME       = @SINGUNAME@
112S_VERSION       = $${SINGULAR_VERSION-@SINGULAR_VERSION@}
113SINGULAR_DOS_VERSION = @SINGULAR_DOS_VERSION@
114DISTROOT_NAME   = Singular-${S_VERSION}
115BINDIST_NAME    = ${DISTROOT_NAME}-${SINGUNAME}
116SHAREDIST_NAME  = ${DISTROOT_NAME}-share
117
118test_t:
119        echo ${S_VERSION}
120
121.PHONY: sharedist bindist static-bindist infodist win-sharedist
122sharedist: ${SINGULAR}
123        cd doc; ${MAKE} all ps
124        rm -rf ${TMPDIR}
125        ${MKINSTALLDIRS} ${TMPDIR}/Singular/LIB/${S_VERSION}
126        ${MKINSTALLDIRS} ${TMPDIR}/Singular/doc/${S_VERSION}
127        ${MKINSTALLDIRS} ${TMPDIR}/Singular/html/${S_VERSION}
128        ${MKINSTALLDIRS} ${TMPDIR}/info
129        ${MKINSTALLDIRS} ${TMPDIR}/LIB/gftables
130        cp Singular/LIB/*.lib ${TMPDIR}/Singular/LIB/${S_VERSION}
131        cp Singular/LIB/gftables/[0-9]* ${TMPDIR}/LIB/gftables
132        cd ${TMPDIR}/Singular/LIB/${S_VERSION}; \
133                ${LN_S} ../gftables .
134        cp doc/singular.hlp doc/singular.ps doc/usercard.ps \
135           doc/singular.dvi doc/usercard.dvi \
136           ${TMPDIR}/Singular/doc/${S_VERSION}
137        cp -R doc/html/* ${TMPDIR}/Singular/html/${S_VERSION}
138        cd ${TMPDIR}/info; \
139        ${LN_S} ../Singular/doc/${S_VERSION}/singular.hlp .
140        cat README.share | sed -e "s/<x.y.z>/${S_VERSION}/" > \
141                           ${TMPDIR}/Singular/README.share
142        cat README.general | sed -e "s/<x.y.z>/${S_VERSION}/" > \
143                             ${TMPDIR}/Singular/README.general
144        cp COPYING ${TMPDIR}/Singular
145        cd ${TMPDIR}; \
146           tar -cf sing.tar Singular info; \
147           gzip sing.tar
148        cp ${TMPDIR}/sing.tar.gz ${SHAREDIST_NAME}.tar.gz
149        rm -rf ${TMPDIR}
150
151win-sharedist:
152        export SINGULAR_VERSION=${SINGULAR_DOS_VERSION} && ${MAKE} sharedist
153
154bindist: ${SINGULAR}
155        cd Singular; ${MAKE} Singular-$@ libparse
156        rm -rf ${TMPDIR}
157        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
158        ${MKINSTALLDIRS} ${TMPDIR}/Singular
159        cp Singular/Singular-$@ \
160           ${TMPDIR}/${SINGUNAME}/bin/Singular-${S_VERSION}
161        cd ${TMPDIR}/${SINGUNAME}/bin; \
162           ${LN_S} Singular-${S_VERSION} Singular
163        cp Singular/libparse ${TMPDIR}/${SINGUNAME}/bin/
164        cp COPYING ${TMPDIR}/Singular
165        cat README.bin | sed -e "s/<x.y.z>/${S_VERSION}/" > \
166                         ${TMPDIR}/Singular/README.bin
167        cat README.general | sed -e "s/<x.y.z>/${S_VERSION}/" > \
168                             ${TMPDIR}/Singular/README.general
169        cat INSTALL | sed -e "s/<x.y.z>/${S_VERSION}/" > \
170                      ${TMPDIR}/Singular/INSTALL
171        cd ${TMPDIR}; \
172           tar cf ${BINDIST_NAME}.tar ${SINGUNAME} Singular; \
173           gzip ${BINDIST_NAME}.tar
174        cp ${TMPDIR}/${BINDIST_NAME}.tar.gz .
175        rm -rf ${TMPDIR}
176
177static-bindist: ${SINGULAR}
178        cd Singular; ${MAKE} Singular-$@ libparse
179        rm -rf ${TMPDIR}
180        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
181        ${MKINSTALLDIRS} ${TMPDIR}/Singular
182        cp Singular/Singular-$@ \
183           ${TMPDIR}/${SINGUNAME}/bin/Singular-${S_VERSION}-static
184        cd ${TMPDIR}/${SINGUNAME}/bin;  \
185           ${LN_S} Singular-${S_VERSION}-static Singular
186        cp COPYING ${TMPDIR}/Singular
187        cat README.bin | sed -e "s/<x.y.z>/${S_VERSION}/" > \
188                         ${TMPDIR}/Singular/README.bin
189        cat README.general | sed -e "s/<x.y.z>/${S_VERSION}/" > \
190                             ${TMPDIR}/Singular/README.general
191        cat INSTALL | sed -e "s/<x.y.z>/${S_VERSION}/" > \
192                      ${TMPDIR}/Singular/INSTALL
193        cd ${TMPDIR}; \
194           tar cf ${BINDIST_NAME}-static.tar ${SINGUNAME} Singular;\
195           gzip ${BINDIST_NAME}-static.tar
196        cp ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
197        rm -rf ${TMPDIR}
198
199infodist:
200        rm -rf ${TMPDIR}
201        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
202        cp `which info` ${TMPDIR}/${SINGUNAME}/bin/
203        cd ${TMPDIR}; tar cf info-${SINGUNAME}.tar ${SINGUNAME}; \
204                      gzip info-${SINGUNAME}.tar
205        cp ${TMPDIR}/info-${SINGUNAME}.tar.gz .
206        rm -rf ${TMPDIR}
207
208ZIP             = zip
209INSTALL         = ./Singular/install-sh -c
210SH_PROGRAM      = /bin/sh
211INFO_PROGRAM    = /bin/info
212CYGWIN_DLL      = /bin/cygwinb19.dll
213WIN_BINDIR      = ${TMPDIR}/Singular/${SINGULAR_VERSION}
214
215windist: ${SHAREDIST_NAME}.tar.gz ${SINGULAR}
216        cd Singular; ${MAKE} Singular-bindist libparse
217        rm -rf ${TMPDIR}
218        ${MKINSTALLDIRS} ${WIN_BINDIR}
219        ${INSTALL} Singular/Singular-bindist ${WIN_BINDIR}/Singular.exe
220        ${INSTALL} Singular/libparse ${WIN_BINDIR}
221        ${INSTALL} ${SH_PROGRAM} ${WIN_BINDIR}
222        ${INSTALL} ${INFO_PROGRAM} ${WIN_BINDIR}
223        ${INSTALL} ${CYGWIN_DLL} ${WIN_BINDIR}
224        cp  ${SHAREDIST_NAME}.tar.gz ${TMPDIR}
225        cd ${TMPDIR}; gunzip ${SHAREDIST_NAME}.tar.gz; \
226                      tar xf ${SHAREDIST_NAME}.tar
227        rm -rf ${TMPDIR}/info ${TMPDIR}/Singular/README.share
228        cat INSTALL.win | sed -e "s/<x.y.z>/${S_VERSION}/" > \
229                         ${TMPDIR}/Singular/INSTALL
230        cp README.win | sed -e "s/<x.y.z>/${S_VERSION}/" > \
231                         ${TMPDIR}/Singular/README
232        cd ${TMPDIR}; \
233           ${ZIP} -r sing Singular
234        cp ${TMPDIR}/sing.zip Singular-${S_VERSION}-${SINGUNAME}.zip .
235        rm -rf ${TMPDIR}
236
237
238##############################################################
239# stuff for configure
240Makefile : Makefile.in config.status
241        CONFIG_FILES=Makefile ./config.status
242
243doc/Makefile: doc/Makefile.in config.status
244        CONFIG_FILES=doc/Makefile ./config.status
245
246config.status: configure
247        ./config.status --recheck
248
249configure: configure.in
250        @echo "You need to rerun autoconf. I am proceeding, for now."
251        @touch configure
252#       autoconf
253#
Note: See TracBrowser for help on using the repository browser.