source: git/Makefile.in @ 616b1d

spielwiese
Last change on this file since 616b1d was 616b1d, checked in by Hans Schönemann <hannes@…>, 26 years ago
*hannes: infodit: info should also be stripped git-svn-id: file:///usr/local/Singular/svn/trunk@2233 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 8.0 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}/Singular/LIB/gftables
130        cp Singular/LIB/*.lib ${TMPDIR}/Singular/LIB/${S_VERSION}
131        cp Singular/LIB/gftables/[0-9]* ${TMPDIR}/Singular/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        -strip ${TMPDIR}/${SINGUNAME}/bin/*
165        cp COPYING ${TMPDIR}/Singular
166        cat README.bin | sed -e "s/<x.y.z>/${S_VERSION}/" > \
167                         ${TMPDIR}/Singular/README.bin
168        cat README.general | sed -e "s/<x.y.z>/${S_VERSION}/" > \
169                             ${TMPDIR}/Singular/README.general
170        cat INSTALL | sed -e "s/<x.y.z>/${S_VERSION}/" > \
171                      ${TMPDIR}/Singular/INSTALL
172        cd ${TMPDIR}; \
173           tar cf ${BINDIST_NAME}.tar ${SINGUNAME} Singular; \
174           gzip ${BINDIST_NAME}.tar
175        cp ${TMPDIR}/${BINDIST_NAME}.tar.gz .
176        rm -rf ${TMPDIR}
177
178static-bindist: ${SINGULAR}
179        cd Singular; ${MAKE} Singular-$@ libparse
180        rm -rf ${TMPDIR}
181        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
182        ${MKINSTALLDIRS} ${TMPDIR}/Singular
183        cp Singular/Singular-$@ \
184           ${TMPDIR}/${SINGUNAME}/bin/Singular-${S_VERSION}-static
185        cd ${TMPDIR}/${SINGUNAME}/bin;  \
186           ${LN_S} Singular-${S_VERSION}-static Singular
187        cp COPYING ${TMPDIR}/Singular
188        cat README.bin | sed -e "s/<x.y.z>/${S_VERSION}/" > \
189                         ${TMPDIR}/Singular/README.bin
190        cat README.general | sed -e "s/<x.y.z>/${S_VERSION}/" > \
191                             ${TMPDIR}/Singular/README.general
192        cat INSTALL | sed -e "s/<x.y.z>/${S_VERSION}/" > \
193                      ${TMPDIR}/Singular/INSTALL
194        cd ${TMPDIR}; \
195           tar cf ${BINDIST_NAME}-static.tar ${SINGUNAME} Singular;\
196           gzip ${BINDIST_NAME}-static.tar
197        cp ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
198        rm -rf ${TMPDIR}
199
200infodist:
201        rm -rf ${TMPDIR}
202        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
203        cp `which info` ${TMPDIR}/${SINGUNAME}/bin/
204        -strip ${TMPDIR}/${SINGUNAME}/bin/info
205        cd ${TMPDIR}; tar cf info-${SINGUNAME}.tar ${SINGUNAME}; \
206                      gzip info-${SINGUNAME}.tar
207        cp ${TMPDIR}/info-${SINGUNAME}.tar.gz .
208        rm -rf ${TMPDIR}
209
210ZIP             = zip
211INSTALL         = ./Singular/install-sh -c
212SH_PROGRAM      = /bin/sh
213INFO_PROGRAM    = /bin/info
214CYGWIN_DLL      = /bin/cygwinb19.dll
215WIN_BINDIR      = ${TMPDIR}/Singular/${S_VERSION}
216WIN_SHAREDIST_NAME = Singular-${SINGULAR_DOS_VERSION}-share
217
218windist: ${WIN_SHAREDIST_NAME}.tar.gz ${SINGULAR}
219        cd Singular; ${MAKE} Singular-bindist libparse
220        rm -rf ${TMPDIR}
221        ${MKINSTALLDIRS} ${WIN_BINDIR}
222        ${INSTALL} Singular/Singular-bindist ${WIN_BINDIR}/Singular.exe
223        ${INSTALL} Singular/libparse ${WIN_BINDIR}
224        ${INSTALL} ${SH_PROGRAM} ${WIN_BINDIR}
225        ${INSTALL} ${INFO_PROGRAM} ${WIN_BINDIR}
226        ${INSTALL} ${CYGWIN_DLL} ${WIN_BINDIR}
227        cp  ${WIN_SHAREDIST_NAME}.tar.gz ${TMPDIR}
228        cd ${TMPDIR}; gunzip ${WIN_SHAREDIST_NAME}.tar.gz; \
229                      tar xf ${WIN_SHAREDIST_NAME}.tar
230        rm -rf ${TMPDIR}/info ${TMPDIR}/Singular/README.share
231        cat INSTALL.win | sed -e "s/<x.y.z>/${S_VERSION}/" > \
232                         ${TMPDIR}/Singular/INSTALL
233        cat README.win | sed -e "s/<x.y.z>/${S_VERSION}/" > \
234                         ${TMPDIR}/Singular/README
235        cd ${TMPDIR}; \
236           ${ZIP} -r sing Singular
237        cp ${TMPDIR}/sing.zip Singular-${S_VERSION}-${SINGUNAME}.zip
238        rm -rf ${TMPDIR}
239
240
241##############################################################
242# stuff for configure
243Makefile : Makefile.in config.status
244        CONFIG_FILES=Makefile ./config.status
245
246doc/Makefile: doc/Makefile.in config.status
247        CONFIG_FILES=doc/Makefile ./config.status
248
249config.status: configure
250        ./config.status --recheck
251
252configure: configure.in
253        @echo "You need to rerun autoconf. I am proceeding, for now."
254        @touch configure
255#       autoconf
256#
Note: See TracBrowser for help on using the repository browser.