source: git/Makefile.in @ a5f15a

spielwiese
Last change on this file since a5f15a was af6a6b, checked in by Olaf Bachmann <obachman@…>, 25 years ago
* version separator now - * took over new distribition scheme from 1-2 branch * incresed version to 1-3-2 git-svn-id: file:///usr/local/Singular/svn/trunk@2829 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 7.6 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: local-clean
63        $(recurse)
64
65distclean: 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 -r -s ${SINGULAR} Tst/Old/universal.lst
96
97Tst-Short: ${SINGULAR} Tst/Short Tst/regress.cmd
98        ${PERL} Tst/regress.cmd -r -s ${SINGULAR} Tst/Short/*.tst
99
100Tst-Long:  ${SINGULAR} Tst/Short Tst/regress.cmd
101        ${PERL} Tst/regress.cmd -r -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@}
113DISTROOT_NAME   = Singular-${S_VERSION}
114BINDIST_NAME    = ${DISTROOT_NAME}-${SINGUNAME}
115SHAREDIST_NAME  = ${DISTROOT_NAME}-share
116ZIP             = zip
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}/Singular/LIB/gftables
129        cp Singular/LIB/*.lib ${TMPDIR}/Singular/LIB/${S_VERSION}
130        rm -f ${TMPDIR}/Singular/LIB/${S_VERSION}/fastsolv.lib
131        rm -f ${TMPDIR}/Singular/LIB/${S_VERSION}/tst.lib
132        cp Singular/LIB/gftables/[0-9]* ${TMPDIR}/Singular/LIB/gftables
133        cp doc/singular.hlp doc/singular.ps doc/usercard.ps \
134           doc/singular.dvi doc/usercard.dvi \
135           ${TMPDIR}/Singular/doc/${S_VERSION}
136        cp -R doc/html/* ${TMPDIR}/Singular/html/${S_VERSION}
137        cat README.general | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
138                             ${TMPDIR}/Singular/README
139        cat COPYING | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
140                             ${TMPDIR}/Singular/COPYING
141        chmod -R  a+rX  ${TMPDIR}/Singular
142        cd ${TMPDIR}; \
143            ${ZIP} -r ${SHAREDIST_NAME} Singular; \
144            tar cf ${SHAREDIST_NAME}.tar Singular; gzip ${SHAREDIST_NAME}.tar
145        mv ${TMPDIR}/${SHAREDIST_NAME}.zip ${TMPDIR}/${SHAREDIST_NAME}.tar.gz .
146        rm -rf ${TMPDIR}/
147
148
149bindist: ${SINGULAR}
150        cd Singular; ${MAKE} Singular-$@ libparse
151        rm -rf ${TMPDIR}
152        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
153        ${MKINSTALLDIRS} ${TMPDIR}/Singular
154        cp Singular/Singular-$@ \
155           ${TMPDIR}/${SINGUNAME}/bin/Singular-${S_VERSION}
156        cd ${TMPDIR}/${SINGUNAME}/bin; \
157           ${LN_S} Singular-${S_VERSION} Singular
158        cp Singular/libparse ${TMPDIR}/${SINGUNAME}/bin/
159        -strip ${TMPDIR}/${SINGUNAME}/bin/*
160        cat INSTALL.unix | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
161                      ${TMPDIR}/Singular/INSTALL
162        cd ${TMPDIR}; chmod -R a+rX *;\
163           tar cf ${BINDIST_NAME}.tar ${SINGUNAME} Singular; \
164           gzip ${BINDIST_NAME}.tar
165        mv ${TMPDIR}/${BINDIST_NAME}.tar.gz .
166        rm -rf ${TMPDIR}
167
168static-bindist: ${SINGULAR}
169        cd Singular; ${MAKE} Singular-$@ libparse
170        rm -rf ${TMPDIR}
171        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
172        ${MKINSTALLDIRS} ${TMPDIR}/Singular
173        cp Singular/Singular-$@ \
174           ${TMPDIR}/${SINGUNAME}/bin/Singular-${S_VERSION}-static
175        cd ${TMPDIR}/${SINGUNAME}/bin;  \
176           ${LN_S} Singular-${S_VERSION}-static Singular
177        cat INSTALL | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
178                      ${TMPDIR}/Singular/INSTALL
179        cd ${TMPDIR}; chmod -R a+rX *;\
180           tar cf ${BINDIST_NAME}-static.tar ${SINGUNAME} Singular;\
181           gzip ${BINDIST_NAME}-static.tar
182        mv ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
183        rm -rf ${TMPDIR}
184
185infodist:
186        rm -rf ${TMPDIR}
187        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
188        cp `which info` ${TMPDIR}/${SINGUNAME}/bin/
189        -strip ${TMPDIR}/${SINGUNAME}/bin/info
190        cd ${TMPDIR}; tar cf info-${SINGUNAME}.tar ${SINGUNAME}; \
191                      gzip info-${SINGUNAME}.tar
192        mv ${TMPDIR}/info-${SINGUNAME}.tar.gz .
193        rm -rf ${TMPDIR}
194
195INSTALL         = ./Singular/install-sh -c
196SH_PROGRAM      = /bin/sh
197INFO_PROGRAM    = /bin/info
198CYGWIN_DLL      = /bin/cygwin1.dll
199WIN_BINDIR      = ${TMPDIR}/Singular/${S_VERSION}
200
201windist: ${SINGULAR}
202        cd Singular; ${MAKE} Singular-bindist libparse
203        rm -rf ${TMPDIR}
204        ${MKINSTALLDIRS} ${WIN_BINDIR}
205        ${INSTALL} Singular/Singular-bindist ${WIN_BINDIR}/Singular.exe
206        ${INSTALL} Singular/libparse ${WIN_BINDIR}
207        ${INSTALL} ${SH_PROGRAM} ${WIN_BINDIR}
208        ${INSTALL} ${INFO_PROGRAM} ${WIN_BINDIR}
209        ${INSTALL} ${CYGWIN_DLL} ${WIN_BINDIR}
210        cat INSTALL.win | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
211                         ${TMPDIR}/Singular/INSTALL
212        cd ${TMPDIR}; chmod -R a+rX *;\
213           ${ZIP} -r sing Singular
214        mv ${TMPDIR}/sing.zip Singular-${S_VERSION}-${SINGUNAME}.zip
215        rm -rf ${TMPDIR}
216
217srcdist:
218        rm -rf ${TMPDIR}
219        ${MKINSTALLDIRS} ${TMPDIR}/Singular-${S_VERSION}
220        cd ${TMPDIR}/Singular-${S_VERSION}; cvs co All
221        cd  ${TMPDIR}; \
222        tar cf Singular-${S_VERSION}.tar Singular-${S_VERSION}; \
223        gzip Singular-${S_VERSION}.tar
224        cp ${TMPDIR}/Singular-${S_VERSION}.tar.gz .
225        rm -rf ${TMPDIR}
226
227rpmdist:
228        cd rpm; ${MAKE} rpm
229
230# You can remeber the password with "iwd" == "ich war dabei"
231CRYPT   = enigma # it does not seem to decrypt correctly with the HP crypt
232cryptdist: srcdist
233        ${CRYPT} S-${S_VERSION}-iwd < Singular-${S_VERSION}.tar.gz > Singular-${S_VERSION}.tar.gz.crypt
234
235
236##############################################################
237# stuff for configure
238Makefile : Makefile.in config.status
239        CONFIG_FILES=Makefile ./config.status
240
241doc/Makefile: doc/Makefile.in config.status
242        CONFIG_FILES=doc/Makefile ./config.status
243
244config.status: configure
245        ./config.status --recheck
246
247configure: configure.in
248        @echo "You need to rerun autoconf. I am proceeding, for now."
249        @touch configure
250#       autoconf
251#
Note: See TracBrowser for help on using the repository browser.