source: git/Makefile.in @ 01ccdd4

fieker-DuValspielwiese
Last change on this file since 01ccdd4 was 60467b, checked in by Viktor Levandovskyy <levandov@…>, 19 years ago
*levandov: plural targets for compatibility git-svn-id: file:///usr/local/Singular/svn/trunk@7793 2c84dea3-7e68-4137-9b89-c4e89433aadc
  • Property mode set to 100644
File size: 9.7 KB
RevLine 
[d246c4]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
[3835a59]11@SET_MAKE@
[6afd7c]12SHELL           = /bin/sh
13
[3835a59]14SINGULAR        = @SINGULAR@
[fd4bde]15
[aac46c]16BUILD_SUBDIRS   = @BUILD_SUBDIRS@
[6afd7c]17SUBDIRS         = @SUBDIRS@
18
[3d8259]19PERL            = @PERL@
[f36635]20TMP_DIR         = @TMP_DIR@
[9ead31]21MYGZIP          = @MYGZIP@
22GUNZIP          = @GUNZIP@
[3d8259]23
[9bc556]24##############################################################
[71364b]25# default target
26${SINGULAR}:
[64c6d1]27        ${MAKE} install
28
[3d8259]29##############################################################
[9bc556]30# general targets
[71364b]31# simply descend for these targets
[3d8259]32.PHONY: all install uninstall
33
[f36635]34TEXINFO_TEX_FILES = epsf.tex texinfo.tex txi-cs.tex txi-de.tex txi-no.tex
35TEXINFO_TEX_DIR = Texinfo/doc
[3835a59]36all install uninstall:
37        @ for SUBDIR in ${BUILD_SUBDIRS}; \
[6afd7c]38        do \
[71364b]39          echo ${MAKE} $@ in $${SUBDIR}; \
[f36635]40          ( cd $${SUBDIR} && ${MAKE} $@;); \
41          (if test "$${SUBDIR}" = Texinfo && test -d doc; then \
42                for FILE in ${TEXINFO_TEX_FILES}; \
43                do \
44                  if test "$@" = uninstall; then\
45                    echo rm -f doc/$${FILE};\
46                    rm -f doc/$${FILE}; \
47                  else \
48                    echo cp ${TEXINFO_TEX_DIR}/$${FILE} doc; \
49                    cp ${TEXINFO_TEX_DIR}/$${FILE} doc; \
50                  fi; \
51                done;\
52          fi;); \
[6afd7c]53        done
54
[460c1e1]55install-doc:
56        cd doc; make install
57
[3835a59]58##############################################################
59# cleaning up
[3d8259]60.PHONY: local-clean local-distclean local-maintainer-clean \
61        clean distclean mostlyclean maintainer-clean
[3835a59]62
63# we use a canned sequence to avoid code redundancy
64define recurse
65@ for SUBDIR in ${SUBDIRS}; \
66do \
67  echo ${MAKE} $@ in $${SUBDIR}; \
68  ( cd $${SUBDIR} && ${MAKE} $@; ) \
69done
70endef
71
72local-clean:
73        rm -rf *~ a.out core *.o *.log
74
75local-distclean: local-clean
[3d8259]76        rm -rf Makefile config.cache config.log config.status TAGS* *.gz *.tar
[3835a59]77
78local-maintainer-clean: local-distclean
79        @ echo "This command is intended for maintainer use, only"
80        rm -rf configure
81
[0e1eb3]82clean mostlyclean: local-clean
[3835a59]83        $(recurse)
84
[0e1eb3]85distclean: local-distclean
[3835a59]86        $(recurse)
87
88maintainer-clean: uninstall local-maintainer-clean
89        $(recurse)
[6afd7c]90
[9bc556]91##############################################################
[71364b]92# some extra targets for the specific packages
[3d8259]93.PHONY: factory libfac MP gmp smallgmp
94Singular factory libfac MP gmp smallgmp:
[1464283]95        cd $@; ${MAKE} all
96
[9bc556]97##############################################################
[71364b]98# documentation
[fe40293]99.PHONY: info dvi ps doc doc/singular.hlp html
[3d8259]100
[fe40293]101info dvi ps doc/singular.hlp html: ${SINGULAR}
[64c6d1]102        cd doc; ${MAKE} $@
103
[3835a59]104doc info/singular.hlp:
[64c6d1]105        cd doc; ${MAKE} install
[0164d0]106
[9bc556]107##############################################################
[3d8259]108# Tst targets
109.PHONY: Tst-All Tst Tst-Old Tst-Short Tst-Long
[9bc556]110Tst-All: Tst-Old Tst-Short Tst-Long
111
112Tst: Tst-Old Tst-Short
113
114Tst-Old: ${SINGULAR} Tst/Old/universal.lst Tst/regress.cmd
[a7186ef]115        ${PERL} Tst/regress.cmd -r -s ${SINGULAR} Tst/Old/universal.lst
[9bc556]116
[6919b3]117Tst-Short: ${SINGULAR} Tst/Short/ok_s.lst Tst/regress.cmd
[0632984]118        ${PERL} Tst/regress.cmd -r -s ${SINGULAR} Tst/Short/ok_s.lst
[9bc556]119
[6919b3]120Tst-Long:  ${SINGULAR} Tst/Long/ok_l.lst Tst/regress.cmd
[0632984]121        ${PERL} Tst/regress.cmd -r -s ${SINGULAR} Tst/Long/ok_l.lst
[9bc556]122
[fe40293]123##############################################################
124# distribution targets
[4b72f6]125#
126S_VERSION       = $${SINGULAR_VERSION-@SINGULAR_VERSION@}
127SINGUNAME       = @SINGUNAME@
128localdir        = /usr/local
129install_prefix  = ${localdir}/Singular/${S_VERSION}
130
[74d2017]131BINDIST_DIRS    = kernel Singular doc IntegerProgramming
[60467b]132PLU_BINDIST_DIRS =  ${BINDIST_DIRS}
[4b72f6]133SHAREDIST_DIRS  = Singular doc emacs
[60467b]134PLU_SHAREDIST_DIRS  = ${SHAREDIST_DIRS}
[4b72f6]135TMPDIR          = ${TMP_DIR}/singdist
136
[fe40293]137LN_S            = @LN_S@
138MKINSTALLDIRS   = ./mkinstalldirs
[643fbb]139
140BINDIST_NAME            = Singular-${S_VERSION}-${SINGUNAME}
141PLU_BINDIST_NAME        = SingularPlural-${S_VERSION}-${SINGUNAME}
142SHAREDIST_NAME          = Singular-${S_VERSION}-share
143PLU_SHAREDIST_NAME      = SingularPlural-${S_VERSION}-share
[4b72f6]144
145
[6919b3]146install-dist install-local: install-bindist install-sharedist
[4b72f6]147
148install-bindist:
149        for DIR in ${BINDIST_DIRS}; \
150        do \
[6993ab7]151          if test -d $${DIR}; then \
152            (cd $${DIR}; ${MAKE} install-bindist install_prefix=${install_prefix});\
153          fi \
[4b72f6]154        done
155
[60467b]156install-bindist-plural:
157        for DIR in ${PLU_BINDIST_DIRS}; \
158        do \
159          if test -d $${DIR}; then \
160            (cd $${DIR}; ${MAKE} install-bindist-plural install_prefix=${install_prefix});\
161          fi \
162        done
163
[4b72f6]164install-sharedist: ${SINGULAR}
165        for DIR in ${SHAREDIST_DIRS}; \
166        do \
167          (cd $${DIR}; ${MAKE} install-sharedist install_prefix=${install_prefix}); \
168        done
169
[60467b]170install-sharedist-plural: ${SINGULAR}
171        for DIR in ${PLU_SHAREDIST_DIRS}; \
172        do \
173          (cd $${DIR}; ${MAKE} install-sharedist-plural install_prefix=${install_prefix}); \
174        done
175
176dist: ${SHAREDIST_NAME}.tar.gz  ${BINDIST_NAME}.tar.gz
[643fbb]177
[60467b]178dist-plural: ${PLU_SHAREDIST_NAME}.tar.gz  ${PLU_BINDIST_NAME}.tar.gz
[4b72f6]179
[9ead31]180sharedist ${SHAREDIST_NAME}.tar.gz:
[ade34b]181        if test -d ${TMPDIR}; then rm -rf ${TMPDIR}; fi
[4b72f6]182        ${MAKE} install-sharedist localdir=${TMPDIR}
[263cde]183        chmod -R a+rX ${TMPDIR}
[9ead31]184        cd ${TMPDIR}; tar cf ${SHAREDIST_NAME}.tar Singular; ${MYGZIP} ${SHAREDIST_NAME}.tar
185        mv ${TMPDIR}/${SHAREDIST_NAME}.tar.gz .
[4b72f6]186        rm -rf ${TMPDIR}
187
[60467b]188sharedist-plural ${PLU_SHAREDIST_NAME}.tar.gz:
189        if test -d ${TMPDIR}; then rm -rf ${TMPDIR}; fi
190        ${MAKE} install-sharedist-plural localdir=${TMPDIR}
191        chmod -R a+rX ${TMPDIR}
192        cd ${TMPDIR}; tar cf ${SHAREDIST_NAME}.tar Singular; ${MYGZIP} ${SHAREDIST_NAME}.tar
193        mv ${TMPDIR}/${SHAREDIST_NAME}.tar.gz .
194        rm -rf ${TMPDIR}
195
[9ead31]196bindist ${BINDIST_NAME}.tar.gz:
[ade34b]197        if test -d ${TMPDIR}; then rm -fr ${TMPDIR}; fi
[4b72f6]198        ${MAKE} install-bindist localdir=${TMPDIR}
[263cde]199        chmod -R a+rX ${TMPDIR}
[9ead31]200        cd ${TMPDIR}; tar cf ${BINDIST_NAME}.tar Singular; ${MYGZIP} ${BINDIST_NAME}.tar
[be4505]201        mv ${TMPDIR}/${BINDIST_NAME}.tar.gz .
[0fc04d]202        rm -rf ${TMPDIR}
203
204static-bindist ${BINDIST_NAME}-static.tar.gz:
205        if test -d ${TMPDIR}; then rm -fr ${TMPDIR}; fi
206        ${MAKE} install-bindist localdir=${TMPDIR} LD_STATIC=1
207        chmod -R a+rX ${TMPDIR}
208        cd ${TMPDIR}; tar cf ${BINDIST_NAME}-static.tar Singular; ${MYGZIP} ${BINDIST_NAME}-static.tar
209        mv ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
[4b72f6]210        rm -rf ${TMPDIR}
211
[60467b]212static-bindist-plural ${PLU_BINDIST_NAME}-static.tar.gz:
213        if test -d ${TMPDIR}; then rm -fr ${TMPDIR}; fi
214        ${MAKE} install-bindist-plural localdir=${TMPDIR} LD_STATIC=1
215        chmod -R a+rX ${TMPDIR}
216        cd ${TMPDIR}; tar cf ${BINDIST_NAME}-static.tar Singular; ${MYGZIP} ${BINDIST_NAME}-static.tar
217        mv ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
218        rm -rf ${TMPDIR}
219
[6919b3]220install-root:
[43bcc5]221        ${MKINSTALLDIRS} ${localdir}/bin
222        ${LN_S} ${localdir}/Singular/${S_VERSION}/${SINGUNAME}/Singular ${localdir}/bin/Singular-${S_VERSION}
223        ${LN_S} ${localdir}/Singular/${S_VERSION}/${SINGUNAME}/ESingular ${localdir}/bin/ESingular-${S_VERSION}
224
225
226
[9ead31]227##
228## old targets -- need to be updated
229##
230
[6459a5]231BINDIR_NAME     = Singular/${S_VERSION}/${SINGUNAME}
232LIBDIR_NAME     = Singular/${S_VERSION}/LIB
233GFTABLESDIR_NAME= Singular/${S_VERSION}/LIB/gftables
234DOCDIR_NAME     = Singular/${S_VERSION}/doc
235HTMLDIR_NAME    = Singular/${S_VERSION}/html
236INFODIR_NAME    = Singular/${S_VERSION}/info
[ba4643]237EMACSDIR_NAME   = Singular/${S_VERSION}/emacs
[f36635]238
[af6a6b]239ZIP             = zip
[1124cc7]240
241test_t:
242        echo ${S_VERSION}
[fe40293]243
[49a3054]244.PHONY: sharedist bindist static-bindist infodist win-sharedist
[9ead31]245_static-bindist: ${SINGULAR}
[2afef4]246        cd Singular; ${MAKE} Singular-$@ libparse
[fe40293]247        rm -rf ${TMPDIR}
[f36635]248        ${MKINSTALLDIRS} ${TMPDIR}/${BINDIR_NAME}
249        cp Singular/Singular-$@ ${TMPDIR}/${BINDIR_NAME}/Singular-static
250        cp Singular/libparse ${TMPDIR}/${BINDIR_NAME}
251        -strip ${TMPDIR}/${BINDIR_NAME}/*
252        cat INSTALL.unix | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
[ffc0b6]253                      ${TMPDIR}/Singular/INSTALL
[85c8634]254        cd ${TMPDIR}; chmod -R a+rX *;\
[f36635]255           tar cf ${BINDIST_NAME}-static.tar Singular; \
[9ead31]256           ${MYGZIP} ${BINDIST_NAME}-static.tar
[af6a6b]257        mv ${TMPDIR}/${BINDIST_NAME}-static.tar.gz .
[fe40293]258        rm -rf ${TMPDIR}
259
[9ead31]260_infodist:
[c6b432b]261        rm -rf ${TMPDIR}
262        ${MKINSTALLDIRS} ${TMPDIR}/${SINGUNAME}/bin/
263        cp `which info` ${TMPDIR}/${SINGUNAME}/bin/
[616b1d]264        -strip ${TMPDIR}/${SINGUNAME}/bin/info
[c6b432b]265        cd ${TMPDIR}; tar cf info-${SINGUNAME}.tar ${SINGUNAME}; \
[9ead31]266                      ${MYGZIP} info-${SINGUNAME}.tar
[af6a6b]267        mv ${TMPDIR}/info-${SINGUNAME}.tar.gz .
[c6b432b]268        rm -rf ${TMPDIR}
[fe40293]269
[9fc0da]270INSTALL         = ./Singular/install-sh -c
[2afef4]271SH_PROGRAM      = /bin/sh
272INFO_PROGRAM    = /bin/info
[af6a6b]273CYGWIN_DLL      = /bin/cygwin1.dll
[2afef4]274
[af6a6b]275windist: ${SINGULAR}
[a3705ae]276        cd Singular; ${MAKE} install-bindist
[2afef4]277        rm -rf ${TMPDIR}
[f36635]278        ${MKINSTALLDIRS} ${TMPDIR}/${BINDIR_NAME}
279        ${INSTALL} Singular/Singular-bindist \
280                   ${TMPDIR}/${BINDIR_NAME}/Singular.exe
281        ${INSTALL} Singular/libparse ${TMPDIR}/${BINDIR_NAME}
282        ${INSTALL} ${SH_PROGRAM} ${TMPDIR}/${BINDIR_NAME}
283        ${INSTALL} ${INFO_PROGRAM} ${TMPDIR}/${BINDIR_NAME}
284        ${INSTALL} ${CYGWIN_DLL} ${TMPDIR}/${BINDIR_NAME}
[af6a6b]285        cat INSTALL.win | sed -e "s/<x-y-z>/${S_VERSION}/g" > \
[ffc0b6]286                         ${TMPDIR}/Singular/INSTALL
[85c8634]287        cd ${TMPDIR}; chmod -R a+rX *;\
[b98c7d]288           ${ZIP} -r sing Singular
[af6a6b]289        mv ${TMPDIR}/sing.zip Singular-${S_VERSION}-${SINGUNAME}.zip
290        rm -rf ${TMPDIR}
291srcdist:
292        rm -rf ${TMPDIR}
293        ${MKINSTALLDIRS} ${TMPDIR}/Singular-${S_VERSION}
294        cd ${TMPDIR}/Singular-${S_VERSION}; cvs co All
295        cd  ${TMPDIR}; \
296        tar cf Singular-${S_VERSION}.tar Singular-${S_VERSION}; \
[9ead31]297        ${MYGZIP} Singular-${S_VERSION}.tar
[af6a6b]298        cp ${TMPDIR}/Singular-${S_VERSION}.tar.gz .
[1124cc7]299        rm -rf ${TMPDIR}
[2afef4]300
[af6a6b]301# You can remeber the password with "iwd" == "ich war dabei"
302CRYPT   = enigma # it does not seem to decrypt correctly with the HP crypt
303cryptdist: srcdist
304        ${CRYPT} S-${S_VERSION}-iwd < Singular-${S_VERSION}.tar.gz > Singular-${S_VERSION}.tar.gz.crypt
305
306
[9bc556]307##############################################################
[d246c4]308# stuff for configure
[9bc556]309Makefile : Makefile.in config.status
[d246c4]310        CONFIG_FILES=Makefile ./config.status
311
312doc/Makefile: doc/Makefile.in config.status
313        CONFIG_FILES=doc/Makefile ./config.status
[6afd7c]314
[71364b]315config.status: configure
[6afd7c]316        ./config.status --recheck
317
318configure: configure.in
[5615cd9]319        @echo "You need to rerun autoconf. I am proceeding, for now."
320        @touch configure
[9e5e191]321#       autoconf
322#
Note: See TracBrowser for help on using the repository browser.