[SCM] an open source computer algebra system branch, master, updated. upstream/3-1-3-1-8-g8b7e901
Felix Salfelder
felix at em.cs.uni-frankfurt.de
Sat Feb 4 19:48:31 UTC 2012
The following commit has been merged in the master branch:
commit 4bc30b5cef0a8a639487105ea6fd951d5bd99684
Author: Felix Salfelder <felix at em.cs.uni-frankfurt.de>
Date: Sat Feb 4 20:39:16 2012 +0100
- use dpkg_buildflags
- install $DESTDIR
- rename library package to libsingular0
- updated debian/copyright
diff --git a/debian/changelog b/debian/changelog
index d3775fe..279d9f6 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,13 @@
-singular (3-1-3-3) UNRELEASED; urgency=low
+singular (3.1.3-3) UNRELEASED; urgency=low
* new upstream version (preview)
* removed cdbs, use plain debhelper
- * incomplete
+ * install to $(DESTDIR)
+ * sane, uscan friendly, version number pattern
+ * library package name: libsingular0
+ * FIXME:
+ - file name for libsingular*.so
+ - is debian/copyright complete?
-- Felix Salfelder <salfelder at em.cs.uni-frankfurt.de> Sat, 21 Jan 2012 19:05:47 +0100
diff --git a/debian/control b/debian/control
index 7426b4f..77285c8 100644
--- a/debian/control
+++ b/debian/control
@@ -1,14 +1,18 @@
Source: singular
Section: math
Priority: optional
-Maintainer: Tim Abbott <tabbott at mit.edu>
+Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.debian.org>
+Uploaders: Felix Salfelder <felix at salfelder.org>
Homepage: http://www.singular.uni-kl.de/
+DM-Upload-Allowed: yes
Build-Depends: autotools-dev, debhelper (>= 5), quilt, patchutils (>= 0.2.25), libgmp3-dev, libntl-dev (>=5.2), libncurses5-dev, libreadline-dev, libmpfr-dev
Standards-Version: 3.8.0
+Vcs-Browser: http://git.debian.org/?p=debian-science/packages/singular.git
+Vcs-Git: git://git.debian.org/git/debian-science/packages/singular.git
Package: singular
Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libsingular-3-1 (= ${binary:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends}, libsingular0 (= ${binary:Version})
Description: A commutative algebra system
SINGULAR is a Computer Algebra System for polynomial computations
with special emphasis on the needs of commutative algebra,
@@ -16,11 +20,13 @@ Description: A commutative algebra system
.
Main computational objects: ideals/modules over very general
polynomial rings over various ground fields.
+ .
+ This package contains the Singular CLI and some helper programs.
Package: libsingular-dev
Section: libdevel
Architecture: any
-Depends: ${shlibs:Depends}, ${misc:Depends}, libsingular-3-1 (= ${binary:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends}, libsingular0 (= ${binary:Version})
Description: Library for commutative algebra, development files
SINGULAR is a Computer Algebra System for polynomial computations
with special emphasis on the needs of commutative algebra,
@@ -28,11 +34,15 @@ Description: Library for commutative algebra, development files
.
Main computational objects: ideals/modules over very general
polynomial rings over various ground fields.
+ .
+ This package contains header files and static libaries.
-Package: libsingular-3-1
+Package: libsingular0
+Provides: libsingular
Section: libs
Architecture: any
Depends: ${shlibs:Depends}, ${misc:Depends}
+Conflicts: libsingular-3-0-4-3
Description: Library for commutative algebra, shared library
SINGULAR is a Computer Algebra System for polynomial computations
with special emphasis on the needs of commutative algebra,
@@ -40,3 +50,6 @@ Description: Library for commutative algebra, shared library
.
Main computational objects: ideals/modules over very general
polynomial rings over various ground fields.
+ .
+ This package contains the shared library, some Singular runtime libraries and
+ lookup tables.
diff --git a/debian/copyright b/debian/copyright
index 99a608c..d4cf15d 100644
--- a/debian/copyright
+++ b/debian/copyright
@@ -1,57 +1,69 @@
-This package was debianized by Tim Abbott <tabbott at mit.edu> in 2008.
-
-It was downloaded from http://www.singular.uni-kl.de.
-
-Copyright: (C) 1986-2007 G.-M. Greuel, G. Pfister, H. Schoenemann
- (C) 1999-2007 O. Bachmann (omalloc/, licensed under GPL2+)
- (C) 1991-2007 G.-M. Greuel, R. Stobbe, J. Schmidt, G. Pfister,
- H. Schoenemann (factory/)
- (C) 1996-2007 Michael Messollen <mmessollen at web.de> (libfac/)
- (C) 1996-2007 Agnes Eileen Heydtmann,
- Alexander Dreyer,
- Andrea Mindnich,
- Anne Fruehbis-Krueger,
- Bernd Martin,
- Christian Gorzel,
- Christine Theis,
- Christoph Lossen,
- Dietmar Hillebrand,
- Gerhard Pfister,
- Gert-Martin Greuel,
- Hans Schoenemann,
- I.Bermejo,
- Ivor Saynisch,
- Jorge Martin Morales,
- Jose Ignacio Farran Martin,
- Kai Krueger,
- Markus Hochstetter,
- Martin Lamm,
- Maryna Viazovska,
- Mathias Schulze,
- Moritz Wenk,
- Olaf Bachmann,
- Ph.Gimenez,
- Santiago Laplagne,
- S. Endrass,
- Simon King,
- Thomas Bayer,
- Thomas Keilen,
- Tobias Hirsch,
- Viktor Levandovskyy,
- Wilfred Pohl,
- Wolfram Decker (Singular/LIB)
-
-License:
-
+This package was downloaded from http://www.singular.uni-kl.de
+
+Files: debian/*
+Authors: Tim Abbott <tabbott at mit.edu> 2008,
+Copyright: Felix Salfelder <felix at salfelder.org> 2012
+License: GPL-3+
+ The Debian packaging is licensed under the GPL,
+ version 3 or later.
+
+Files: factory/*
+Copyright: © 1991-2007 G.-M. Greuel, R. Stobbe, J. Schmidt, G. Pfister,
+ H. Schoenemann
+
+Files: omalloc/*
+Author: © 1999-2007 O. Bachmann
+License: GPL2+
+
+Files: libfac/*
+Author: © 1996-2007 Michael Messollen <mmessollen at web.de>
+
+Files: *
+Authors:
+Copyright: © 1986-2007 G.-M. Greuel, G. Pfister, H. Schoenemann
+ © 1996-2007 Agnes Eileen Heydtmann,
+ Alexander Dreyer,
+ Andrea Mindnich,
+ Anne Fruehbis-Krueger,
+ Bernd Martin,
+ Christian Gorzel,
+ Christine Theis,
+ Christoph Lossen,
+ Dietmar Hillebrand,
+ Gerhard Pfister,
+ Gert-Martin Greuel,
+ Hans Schoenemann,
+ I.Bermejo,
+ Ivor Saynisch,
+ Jorge Martin Morales,
+ Jose Ignacio Farran Martin,
+ Kai Krueger,
+ Markus Hochstetter,
+ Martin Lamm,
+ Maryna Viazovska,
+ Mathias Schulze,
+ Moritz Wenk,
+ Olaf Bachmann,
+ Ph.Gimenez,
+ Santiago Laplagne,
+ S. Endrass,
+ Simon King,
+ Thomas Bayer,
+ Thomas Keilen,
+ Tobias Hirsch,
+ Viktor Levandovskyy,
+ Wilfred Pohl,
+ Wolfram Decker (Singular/LIB)
+License: GPL2+
This package is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; version 2 or version 3 of the License.
-
+ .
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
-
+ .
You should have received a copy of the GNU General Public License
along with this package; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
@@ -59,48 +71,31 @@ License:
On Debian systems, the complete text of the GNU General
Public License can be found in `/usr/share/common-licenses/GPL'.
-The file factory/bin/folding.el is
-
-Copyright (C) 1992, 1993, Jamie Lokier
-
-and is also licensed under the GPL, version 2 or higher.
-
-The file Singular/run.c is
-
+Files: Singular/run.c
Copyright (C) 1998 Charles S. Wilson
+License: GPL2+
-and is licensed under the GPL, version 2 or higher.
-
-The file omalloc/gmalloc.c is
+Files: factory/bin/folding.el
+Copyright: (C) 1992, 1993, Jamie Lokier
+License: GPL2+
-Copyright 1990, 1991, 1992, 1993, 1995 Free Software Foundation, Inc.
+Files: omalloc/gmalloc.c
+Copyright: 1990, 1991, 1992, 1993, 1995 Free Software Foundation, Inc.
Written May 1989 by Mike Haertel.
+License: GPL2+
-and is licensed under the GPL, version 2 or higher.
-
-The file factory/readcf.cc is
-
-Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005,
+Files: factory/readcf.cc
+Copyright: (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005,
2006 Free Software Foundation, Inc.
+License: GPL2+
-and is licensed under the GPL, version 2 or higher.
-
-The files kernel/fegetopt.h and kernel/fegetopt.c are
-
-Copyright (C) 1987-1994 Free Software Foundation, Inc.
-
-and are licensed under the GPL, version 2 or higher.
-
-The directory mpr/ is taken from the libiberty library, and is
-
- Copyright 1989-1992 Free Software Foundation, Inc.
+Files: kernel/fegetopt.{h,c}
+Copyright: (C) 1987-1994 Free Software Foundation, Inc.
+License: GPL2+
-and is licensed under the GPL, version 2 or higher.
-
-The file kernel/htmlhelp.h has a different license:
-
- * Copyright 2004 Jacek Caban
- *
+Files: kernel/htmlhelp.h
+Copyright: 2004 Jacek Caban
+License: LGPL
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
@@ -118,10 +113,9 @@ The file kernel/htmlhelp.h has a different license:
On Debian systems, the complete text of the GNU Lesser General Public
License can be found in `/usr/share/common-licenses/LGPL'.
-The file omalloc/omReturn.h has the following license:
-
- * Copyright 2000 by Gray Watson
- *
+Files: omalloc/omReturn.h
+Copyright: 2000 by Gray Watson
+License: other
* This file is part of the dmalloc package.
*
* Permission to use, copy, modify, and distribute this software for
@@ -137,12 +131,9 @@ The file omalloc/omReturn.h has the following license:
*
* The author may be contacted via http://dmalloc.com/
-The files Singular/ndbm.cc and Singular/ndbm.h have the following license:
-
-Copyright (c) 1983 Regents of the University of California.
-
-License:
-
+Files: Singular/ndbm.{cc,h}
+Copyright: (c) 1983 Regents of the University of California.
+License: BSD
Redistribution and use in source and binary forms, with or without
modification, are permitted under the terms of the BSD License.
@@ -161,39 +152,37 @@ License:
On Debian systems, the complete text of the BSD License can be
found in `/usr/share/common-licenses/BSD'.
-The directory omalloc/Misc/dlmalloc has the following license:
-
-Copyright (c) 1995 Wolfram Gloger
-
-Permission to use, copy, modify, distribute, and sell this software
-and its documentation for any purpose is hereby granted without fee,
-provided that (i) the above copyright notices and this permission
-notice appear in all copies of the software and related documentation,
-and (ii) the name of Wolfram Gloger may not be used in any advertising
-or publicity relating to the software.
-
-THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
-EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
-WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
-
-IN NO EVENT SHALL WOLFRAM GLOGER BE LIABLE FOR ANY SPECIAL,
-INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
-DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
-WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY
-OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
-PERFORMANCE OF THIS SOFTWARE.
-
-The directory MP/ was removed from the singular package because it had
-non-DFSG free code (the license requires non-commercial use).
-
-The directory ntl/ was removed from the singular package in order to
-use the Debian ntl package from upstream sources.
-
-The directory Singular/LIB/surfex and the file Singular/LIB/surfex.lib
-were removed from the singular package because it had unclear
-copyright status, had no actual java sources for the class files, and
-regardless should be packaged separately should it be included in
-Debian.
-
-The Debian packaging is (C) 2008, Tim Abbott <tabbott at mit.edu> and is
-licensed under the GPL, see above.
+Files: omalloc/Misc/dlmalloc
+Copyright: (c) 1995 Wolfram Gloger
+License: other
+ Permission to use, copy, modify, distribute, and sell this software
+ and its documentation for any purpose is hereby granted without fee,
+ provided that (i) the above copyright notices and this permission
+ notice appear in all copies of the software and related documentation,
+ and (ii) the name of Wolfram Gloger may not be used in any advertising
+ or publicity relating to the software.
+ .
+ THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
+ EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
+ WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+ .
+ IN NO EVENT SHALL WOLFRAM GLOGER BE LIABLE FOR ANY SPECIAL,
+ INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY
+ DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+ WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY
+ OF LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ PERFORMANCE OF THIS SOFTWARE.
+
+Files: MP/*
+ The directory MP/ was removed from the singular package because it had
+ non-DFSG free code (the license requires non-commercial use).
+
+Files: ntl/*
+ removed from the singular package as we
+ use the Debian ntl package from upstream sources.
+
+Files: Singular/LIB/surfex{.lib,}
+ removed from the singular package because it had unclear
+ copyright status, had no actual java sources for the class files, and
+ regardless should be packaged separately should it be included in
+ Debian.
diff --git a/debian/libsingular-3-1.install b/debian/libsingular-3-1.install
deleted file mode 100644
index eb6e3dc..0000000
--- a/debian/libsingular-3-1.install
+++ /dev/null
@@ -1,3 +0,0 @@
-usr/bin/*.so usr/lib/singular/
-usr/lib/singular/libsingular-*.so usr/lib/
-usr/share/singular/* usr/lib/singular/
diff --git a/debian/libsingular0.install b/debian/libsingular0.install
new file mode 100644
index 0000000..76bf0bc
--- /dev/null
+++ b/debian/libsingular0.install
@@ -0,0 +1,6 @@
+#usr/bin/*.so usr/lib/singular/
+#usr/lib/*.lib usr/lib/singular/
+usr/lib/singular/libsingular-*.so usr/lib/
+
+#seems too specific to put in share
+usr/share/singular/* usr/lib/singular/
diff --git a/debian/patches/IntegerProgramming_make.patch b/debian/patches/IntegerProgramming_make.patch
index 614f17a..56dd1a3 100644
--- a/debian/patches/IntegerProgramming_make.patch
+++ b/debian/patches/IntegerProgramming_make.patch
@@ -1,5 +1,24 @@
--- a/IntegerProgramming/Makefile.in
+++ b/IntegerProgramming/Makefile.in
+@@ -57,12 +57,12 @@
+ install_all: install
+
+ install install-libsingular: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4) $(LLL)
+- ${MKINSTALLDIRS} ${bindir}
+- ${INSTALL_PROGRAM} $(MAIN1) ${bindir}
+- ${INSTALL_PROGRAM} $(MAIN2) ${bindir}
+- ${INSTALL_PROGRAM} $(MAIN3) ${bindir}
+- ${INSTALL_PROGRAM} $(MAIN4) ${bindir}
+- ${INSTALL_PROGRAM} $(LLL) ${bindir}
++ ${MKINSTALLDIRS} $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} $(MAIN1) $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} $(MAIN2) $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} $(MAIN3) $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} $(MAIN4) $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} $(LLL) $(DESTDIR)${bindir}
+
+ install-bindist: $(MAIN1) $(MAIN2) $(MAIN3) $(MAIN4)
+ ${MKINSTALLDIRS} ${install_bindir}
@@ -84,6 +84,7 @@
-rm -f ${bindir}/$(MAIN3)
-rm -f ${bindir}/$(MAIN4)
diff --git a/debian/patches/Singular_make.patch b/debian/patches/Singular_make.patch
index 703fc58..010e8cf 100644
--- a/debian/patches/Singular_make.patch
+++ b/debian/patches/Singular_make.patch
@@ -63,7 +63,7 @@
Singular-static: version.h
sleep 1
-@@ -382,14 +388,17 @@
+@@ -382,13 +388,16 @@
tesths.cc iparith.o mpsr_Tok.o claptmpl.o\
${OBJS} ${LDFLAGS} ${LIBS} ../kernel/mmalloc.o
@@ -73,7 +73,7 @@
- iparith.o mpsr_Tok.o claptmpl.o \
- ${OBJS} -lkernel -L../kernel -L../factory -L../libfac -L${libdir} ${LIBSINGULAR_LIBS}
+${LIBSINGULAR_NAME}: version.h $(WIN_LIBS) scanner.cc ${OBJS} \
-+ iparith.o libparse.cc claptmpl.o mpsr_Tok.o $(DL_LIBS) tesths.o |mod2.h
++ iparith.o libparse.cc claptmpl.o mpsr_Tok.o $(DL_LIBS) tesths.o
+ $(LIBSINGULAR_LD) ${SLDFLAGS} ${LIBSINGULAR_FLAGS} -o ${LIBSINGULAR_NAME} \
+ tesths.o iparith.o mpsr_Tok.o claptmpl.o \
+ ${OBJS} -lkernel -L../kernel -L../factory -L../libfac -L${libdir} ${LIBSINGULAR_LIBS}
@@ -82,18 +82,12 @@
+ fi
-libsingular.a: mod2.h Makefile version.h $(WIN_LIBS) scanner.cc ${OBJS} \
-- iparith.o libparse.cc claptmpl.o mpsr_Tok.o
+libsingular.a: Makefile version.h $(WIN_LIBS) scanner.cc ${OBJS} \
-+ iparith.o libparse.cc claptmpl.o mpsr_Tok.o |mod2.h
+ iparith.o libparse.cc claptmpl.o mpsr_Tok.o
mkdir libsingular.tmp
(cd libsingular.tmp; \
- ar x ../../kernel/libkernel.a; \
-@@ -415,21 +424,21 @@
-
- misc_ip.o emacs.o tesths.o: version.h
-
--claptmpl.o: claptmpl.cc mod2.h
-+claptmpl.o: claptmpl.cc |mod2.h
+@@ -418,18 +427,18 @@
+ claptmpl.o: claptmpl.cc mod2.h
${CXX} ${CXXFLAGS} ${CPPFLAGS} ${DEFS} -c $<
-iparith.inc: gentable.cc grammar.h tok.h table.h mod2.h
@@ -135,25 +129,78 @@
$(CXX) $(CXXFLAGS) -DGENERATE_OPTION_INDEX -DTSINGULAR -I../kernel feOpt.cc -o feOptTS
./feOptTS
rm -f feOptTS feOptTS.exe
-@@ -576,7 +585,7 @@
- ${MKINSTALLDIRS} ${bindir}
- ${INSTALL_PROGRAM} ${SING_EXEC} ${SINGULAR}
- -for file in *.so; do \
+@@ -560,49 +569,41 @@
+ install-nolns: all installbin-nolns installslib-nolns
+
+ installbin: ${SING_EXEC} libparse ESingular TSingular ${RUN_SINGULARS}
+- ${MKINSTALLDIRS} ${bindir}
+- ${INSTALL_PROGRAM} ${SING_EXEC} ${SINGULAR}
+- -for file in *.so; do \
- ${INSTALL_PROGRAM} $$file ${bindir}; \
-+ ${INSTALL_PROGRAM} $$file ${libdir}; \
++ ${MKINSTALLDIRS} $(DESTDIR)${bindir}
++ ${MKINSTALLDIRS} $(DESTDIR)${libdir}
++ ${INSTALL_PROGRAM} ${SING_EXEC} $(DESTDIR)${SINGULAR}
++ for file in *.so; do \
++ ${INSTALL_PROGRAM} $$file $(DESTDIR)${libdir}; \
+ done
+- ${INSTALL_PROGRAM} libparse ${RUN_SINGULARS} ${bindir}
+- ${INSTALL_PROGRAM} ESingular TSingular ${bindir}
+- ${INSTALL_PROGRAM} surfex ${bindir}
+- chmod a+x ${SINGULAR}
+- rm -f ${bindir}/${SING_EXEC}${EXEC_EXT}
+- cd ${bindir}; ${LN_S} ${SINGULAR} Singular${EXEC_EXT};
+-
+-installbin-nolns: ${SING_EXEC} libparse ESingular TSingular ${RUN_SINGULARS}
+- ${MKINSTALLDIRS} ${bindir}
+- ${INSTALL_PROGRAM} ${SING_EXEC} ${SINGULAR}
+- -for file in *.so; do \
+- ${INSTALL_PROGRAM} $$file ${bindir}; \
+- done
+- ${INSTALL_PROGRAM} libparse ${RUN_SINGULARS} ${bindir}
+- ${INSTALL_PROGRAM} ESingular TSingular ${DL_LIBS} ${bindir}
+- chmod a+x ${SINGULAR}
+- rm -f ${bindir}/${SING_EXEC}${EXEC_EXT}
+- ${INSTALL_PROGRAM} ${SINGULAR} ${bindir}/Singular${EXEC_EXT};
++ ${INSTALL_PROGRAM} libparse ${RUN_SINGULARS} $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} ESingular TSingular $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} surfex $(DESTDIR)${bindir}
++ chmod a+x $(DESTDIR)${SINGULAR}
++ rm -f $(DESTDIR)${bindir}/${SING_EXEC}${EXEC_EXT}
++ cd $(DESTDIR)${bindir}; ${LN_S} ${SINGULAR} Singular${EXEC_EXT};
++
++installbin-nolns: installbin
++ ${INSTALL_PROGRAM} ${SING_EXEC} $(DESTDIR)${bindir}/Singular${EXEC_EXT};
+
+ installslib: LIB
+ test -r ${slibdir} || ${LN_S} `pwd`/LIB ${slibdir}
+
+ installslib-nolns: LIB
+- ${MKINSTALLDIRS} ${slibdir}
++ ${MKINSTALLDIRS} $(DESTDIR)${slibdir}
+ for file in `pwd`/LIB/*.lib; do \
+- ${INSTALL_DATA} $$file ${slibdir}; \
++ ${INSTALL_DATA} $$file $(DESTDIR)${slibdir}; \
+ done
+- ${MKINSTALLDIRS} ${slibdir}/gftables
++ ${MKINSTALLDIRS} $(DESTDIR)${slibdir}/gftables
+ for file in `pwd`/LIB/gftables/*; do \
+- ${INSTALL_DATA} $$file ${slibdir}/gftables/; \
++ ${INSTALL_DATA} $$file $(DESTDIR)${slibdir}/gftables/; \
done
- ${INSTALL_PROGRAM} libparse ${RUN_SINGULARS} ${bindir}
- ${INSTALL_PROGRAM} ESingular TSingular ${DL_LIBS} ${bindir}
-@@ -600,7 +609,7 @@
+
install-libsingular: libsingular
- ${MKINSTALLDIRS} ${includedir}/singular
+- ${MKINSTALLDIRS} ${includedir}/singular
++ ${MKINSTALLDIRS} $(DESTDIR)${includedir}/singular
for file in *.$(SO_SUFFIX); do \
- ${INSTALL_PROGRAM} $$file ${libdir}; \
-+ cp -a $$file ${libdir}; \
++ cp -a $$file $(DESTDIR)${libdir}; \
done
- ${INSTALL_PROGRAM} libsingular.h ${includedir}
+- ${INSTALL_PROGRAM} libsingular.h ${includedir}
++ ${INSTALL_PROGRAM} libsingular.h $(DESTDIR)${includedir}
for file in subexpr.h tok.h grammar.h ipid.h lists.h ipshell.h attrib.h; do \
-@@ -620,7 +629,7 @@
+ sed -e "s:<kernel/:<singular/:" < $$file |sed -e "s:<Singular/:<singular/:"|sed -e "s:<omalloc/:<:"|sed -e "s:<factory/:<:" >${includedir}/singular/$$file ;\
+ done
+@@ -620,7 +621,7 @@
mostlyclean:
-rm -f Singular Singular-static Singularg Singularp libparse feOpt*.inc
-rm -f *.o *.og core *.op *.so* *.dl_o*
@@ -162,3 +209,63 @@
clean: mostlyclean
-rm -f *.bak *.d *.dd depend
+@@ -654,23 +655,23 @@
+
+ install-bindist: $(HEADERS) $(SOURCES) Makefile depend
+ echo "#define MAKE_DISTRIBUTION " > distrib.h
+- sleep 1
+- ${MAKE} ${SING_EXEC} ESingular TSingular libparse ${RUN_SINGULARS}
+- ${MKINSTALLDIRS} ${install_bindir}
+- ${INSTALL_PROGRAM} ${SING_EXEC} ${install_bindir}/Singular
+- -${INSTALL_PROGRAM} *.so ${install_bindir}
+- ${INSTALL_PROGRAM} -s libparse ${RUN_SINGULARS} ESingular TSingular ${install_bindir}
+- ${INSTALL_PROGRAM} surfex ${install_bindir}
++ # sleep 1
++ ${MAKE} ${SING_EXEC} ESingular TSingular libparse $(DESTDIR)${RUN_SINGULARS}
++ ${MKINSTALLDIRS} $(DESTDIR)${install_bindir}
++ ${INSTALL_PROGRAM} ${SING_EXEC} $(DESTDIR)${install_bindir}/Singular
++ -${INSTALL_PROGRAM} *.so $(DESTDIR)${install_bindir}
++ ${INSTALL_PROGRAM} -s libparse ${RUN_SINGULARS} ESingular TSingular $(DESTDIR)${install_bindir}
++ ${INSTALL_PROGRAM} surfex $(DESTDIR)${install_bindir}
+ echo "#undef MAKE_DISTRIBUTION " > distrib.h
+
+ install-sharedist: ${SLIBS_FILES} LIB/gftables
+- ${MKINSTALLDIRS} ${install_slibdir}
+- cp ${SLIBS_FILES} ${install_slibdir}
+- ${MKINSTALLDIRS} ${install_slibdir}/gftables
+- cp ${GFTABLES} ${install_slibdir}/gftables
+- ${MKINSTALLDIRS} ${install_slibdir}/surfex
+- cp LIB/surfex/surfex.jar ${install_slibdir}/surfex
+- chmod -R +rX ${install_slibdir}/*
++ ${MKINSTALLDIRS} $(DESTDIR)${install_slibdir}
++ cp ${SLIBS_FILES} $(DESTDIR)${install_slibdir}
++ ${MKINSTALLDIRS} $(DESTDIR)${install_slibdir}/gftables
++ cp ${GFTABLES} $(DESTDIR)${install_slibdir}/gftables
++ ${MKINSTALLDIRS} $(DESTDIR)${install_slibdir}/surfex
++ cp LIB/surfex/surfex.jar $(DESTDIR)${install_slibdir}/surfex
++ chmod -R +rX $(DESTDIR)${install_slibdir}/*
+
+ tar:
+ tar cf Singular-${SINGULAR_VERSION}-src.tar ${DISTFILES}
+@@ -768,8 +769,8 @@
+ $(CXXG) ${CXXFLAGSG} ${CPPFLAGS} ${CXXTEMPLFLAGSG} ${DEFSG} -c mpsr_Tok.cc -o mpsr_Tok.og
+
+ installg: Singularg
+- ${MKINSTALLDIRS} ${bindir}
+- ${INSTALL_PROGRAM} Singularg ${bindir}
++ ${MKINSTALLDIRS} $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} Singularg $(DESTDIR)${bindir}
+
+ ESingularg: mod2.h feOpt.cc version.h emacs.cc \
+ feOptES.inc
+@@ -848,8 +849,8 @@
+ $(CXXP) ${CXXFLAGSP} ${CPPFLAGS} ${CXXTEMPLFLAGSP} ${DEFSP} -c mpsr_Tok.cc -o mpsr_Tok.op
+
+ installp: Singularp
+- ${MKINSTALLDIRS} ${bindir}
+- ${INSTALL_PROGRAM} Singularp ${bindir}
++ ${MKINSTALLDIRS} $(DESTDIR)${bindir}
++ ${INSTALL_PROGRAM} Singularp $(DESTDIR)${bindir}
+
+ ##
+ ## dependencies
diff --git a/debian/patches/change-library-search-path.patch b/debian/patches/change-library-search-path.patch
index ead51be..634a2d9 100644
--- a/debian/patches/change-library-search-path.patch
+++ b/debian/patches/change-library-search-path.patch
@@ -1,14 +1,19 @@
missing description
-Index: singular-20071209/kernel/feResource.cc
-===================================================================
---- singular-20071209.orig/kernel/feResource.cc 2008-02-07 05:12:57.000000000 -0500
-+++ singular-20071209/kernel/feResource.cc 2008-02-07 05:13:14.000000000 -0500
-@@ -73,7 +73,7 @@
+--- a/kernel/feResource.cc
++++ b/kernel/feResource.cc
+@@ -73,12 +73,14 @@
{
{"SearchPath", 's', feResPath, NULL,
"$SINGULARPATH;"
- "%b/LIB;"
-+ "/usr/lib/singular/LIB/;"
++ "%r/lib/singular;" // r is mostly what i'd call $PREFIX, YMMV
++#ifndef CHAOTIC_RESOURCES
"%b/MOD;"
"%r/LIB;"
"%r/../LIB;"
+ "%d/LIB;"
+ "%d/../LIB"
++#endif
+ ""},
+ {"Singular", 'S', feResBinary,"SINGULAR_EXECUTABLE", "%d/"S_UNAME"/Singular",(char *)""},
+ {"BinDir", 'b', feResDir, "SINGULAR_BIN_DIR", "%d/"S_UNAME, (char *)""},
diff --git a/debian/patches/factory_make.patch b/debian/patches/factory_make.patch
index fc5a8ac..130c364 100644
--- a/debian/patches/factory_make.patch
+++ b/debian/patches/factory_make.patch
@@ -32,6 +32,40 @@ e.g. factoryconf.h, config.h is generated during configure
echo $*.d "\\" > $@
$(CXX) -MM $< $(DEPCXXFLAGS) >> $@
%.dtmp: %.template
+@@ -640,21 +640,21 @@
+ install-nolns: install
+
+ installcf: cf
+- $(MKINSTALLDIRS) $(libdir)
+- $(MKINSTALLDIRS) $(includedir)
+- $(MKINSTALLDIRS) $(templatedir)
+- $(INSTALL_DATA) $(libfactory) $(libdir)/$(libfactory)
+- -$(INSTALL_DATA) libsingcf_g.a $(libdir)/libsingcf_g.a
+- -$(INSTALL_DATA) libsingcf_p.a $(libdir)/libsingcf_p.a
+- $(INSTALL_DATA) factory.h $(includedir)/factory.h
+- $(INSTALL_DATA) cf_gmp.h $(includedir)/cf_gmp.h
+- $(INSTALL_DATA) factoryconf.h $(includedir)/factoryconf.h
+- $(INSTALL_DATA) $(srcdir)/ftmpl_inst.cc $(templatedir)/ftmpl_inst.cc
++ $(MKINSTALLDIRS) $(DESTDIR)$(libdir)
++ $(MKINSTALLDIRS) $(DESTDIR)$(includedir)
++ $(MKINSTALLDIRS) $(DESTDIR)$(templatedir)
++ $(INSTALL_DATA) $(libfactory) $(DESTDIR)$(libdir)/$(libfactory)
++ -$(INSTALL_DATA) libsingcf_g.a $(DESTDIR)$(libdir)/libsingcf_g.a
++ -$(INSTALL_DATA) libsingcf_p.a $(DESTDIR)$(libdir)/libsingcf_p.a
++ $(INSTALL_DATA) factory.h $(DESTDIR)$(includedir)/factory.h
++ $(INSTALL_DATA) cf_gmp.h $(DESTDIR)$(includedir)/cf_gmp.h
++ $(INSTALL_DATA) factoryconf.h $(DESTDIR)$(includedir)/factoryconf.h
++ $(INSTALL_DATA) $(srcdir)/ftmpl_inst.cc $(DESTDIR)$(templatedir)/ftmpl_inst.cc
+ for file in $(templatesrc) $(templateincl); do \
+- $(INSTALL_DATA) $(srcdir)/templates/$$file $(templatedir)/$$file; \
++ $(INSTALL_DATA) $(srcdir)/templates/$$file $(DESTDIR)$(templatedir)/$$file; \
+ done
+ # we run `ranlib' another time for SUN machines
+- $(RANLIB) $(libdir)/$(libfactory)
++ $(RANLIB) $(DESTDIR)$(libdir)/$(libfactory)
+
+ installmem: mem
+ $(MKINSTALLDIRS) $(libdir)
@@ -780,8 +780,10 @@
# seems gmake needs at least a trivial command. otherwise all
# files which depend on config.h will be remade even if congig.h
diff --git a/debian/patches/kernel_make.patch b/debian/patches/kernel_make.patch
index 0bff691..40b07f1 100644
--- a/debian/patches/kernel_make.patch
+++ b/debian/patches/kernel_make.patch
@@ -34,6 +34,41 @@
$(CXX) $(CPPFLAGS) -g -Dp_Procs_Dynamic p_Procs_Generate.cc -o p_Procs_Dynamic
./p_Procs_Dynamic > p_Procs_Dynamic.xx && mv p_Procs_Dynamic.xx p_Procs_Dynamic.inc
-rm -f p_Procs_Dynamic p_Procs_Dynamic.exe
+@@ -275,8 +276,8 @@
+ install-nolns: install
+
+ install-libsingular: install
+- -${MKINSTALLDIRS} ${includedir}
+- -${MKINSTALLDIRS} ${includedir}/singular
++ -${MKINSTALLDIRS} $(DESTDIR)${includedir}
++ -${MKINSTALLDIRS} $(DESTDIR)${includedir}/singular
+ -for file in *.h kInline.cc; do sed -e "s:<kernel/:<singular/:"< $$file | sed -e "s:<Singular/:<singular/:"|sed -e "s:<omalloc/:<:"|sed -e "s:<factory/:<:" > ${includedir}/singular/$$file; done
+
+ install: all installbin
+@@ -293,12 +294,12 @@
+
+
+ installbin: ${DL_LIBS} ${DL_LIBSG} libkernel.a libkernel_g.a
+- ${MKINSTALLDIRS} ${bindir}
++ ${MKINSTALLDIRS} $(DESTDIR)${bindir}
+ - ranlib libkernel.a
+ - ranlib libkernel_g.a
+ ifeq (,${DL_LIBS})
+ else
+- -${INSTALL_PROGRAM} ${DL_LIBS} ${bindir}
++ ${INSTALL_PROGRAM} ${DL_LIBS} $(DESTDIR)${bindir}
+ ifeq (,${DL_LIBSG})
+ else
+ -for file in ${DL_LIBS} ${DL_LIBSG}; do ${INSTALL_PROGRAM} $$file ../Singular; done
+@@ -310,7 +311,7 @@
+ ${MKINSTALLDIRS} ${bindir}
+ ifeq (,${DL_LIBS})
+ else
+- -${INSTALL_PROGRAM} ${DL_LIBS} ${bindir}
++ ${INSTALL_PROGRAM} ${DL_LIBS} $(DESTDIR)${bindir}
+ endif
+
+ ##
@@ -448,15 +449,15 @@
## dependencies
##
diff --git a/debian/patches/libfac_make.patch b/debian/patches/libfac_make.patch
index 9877928..7c4b6b3 100644
--- a/debian/patches/libfac_make.patch
+++ b/debian/patches/libfac_make.patch
@@ -1,14 +1,5 @@
--- a/libfac/Makefile.in
+++ b/libfac/Makefile.in
-@@ -37,7 +37,7 @@
- ##
- CXXFLAGS = @CXXFLAGS@
- CXXTEMPLFLAGS = @CXXTEMPLFLAGS@
--CPPFLAGS = -I${srcdir}/factor -I${srcdir}/charset -I${srcdir} -I.. -I${prefix} @CPPFLAGS@
-+CPPFLAGS = -I${srcdir}/factor -I${srcdir}/charset -I${srcdir} -I.. -I${prefix} @CPPFLAGS@
- DEFS = @DEFS@
- LDFLAGS = @LDFLAGS@
- LIBS = -lfac -lcf -lcfmem -lgmp @LIBS@
@@ -86,40 +86,40 @@
OPTOBJ:
${MKINSTALLDIRS} OPTOBJ
@@ -62,3 +53,24 @@
$(CXX) -g $(CPPFLAGS) $(DEFS) -c $< -o $@
libfac: OPTOBJ libfac.a
+@@ -147,13 +147,13 @@
+ install-nolns: install
+
+ install install-libsingular: all
+- ${MKINSTALLDIRS} ${includedir}
+- ${MKINSTALLDIRS} ${libdir}
+- ${INSTALL_DATA} ${LIBFACINCLUDE} ${includedir}
+- ${INSTALL_DATA} ${TARGETNAME}.a ${libdir}
+- -${INSTALL_DATA} libsingfac_g.a ${libdir}
+- $(RANLIB) ${libdir}/${TARGETNAME}.a
+- -$(RANLIB) ${libdir}/libsingfac_g.a
++ ${MKINSTALLDIRS} $(DESTDIR)${includedir}
++ ${MKINSTALLDIRS} $(DESTDIR)${libdir}
++ ${INSTALL_DATA} ${LIBFACINCLUDE} $(DESTDIR)${includedir}
++ ${INSTALL_DATA} ${TARGETNAME}.a $(DESTDIR)${libdir}
++ -${INSTALL_DATA} libsingfac_g.a $(DESTDIR)${libdir}
++ $(RANLIB) $(DESTDIR)${libdir}/${TARGETNAME}.a
++ -$(RANLIB) $(DESTDIR)${libdir}/libsingfac_g.a
+
+ install_all: install libsingfac_p.a
+ -${INSTALL_DATA} libsingfac_p.a ${libdir}
diff --git a/debian/patches/omalloc_make.patch b/debian/patches/omalloc_make.patch
index c3bf28f..4525ddd 100644
--- a/debian/patches/omalloc_make.patch
+++ b/debian/patches/omalloc_make.patch
@@ -1,7 +1,7 @@
the target 'install-libsingular' is defined twice. this is a bug.
--- a/omalloc/Makefile.in
+++ b/omalloc/Makefile.in
-@@ -180,9 +180,9 @@
+@@ -180,22 +180,22 @@
##
install-nolns: install
@@ -13,4 +13,28 @@ the target 'install-libsingular' is defined twice. this is a bug.
+# $(INSTALL) omalloc.h $(includedir)/singular
install install-libsingular: all
- $(MKINSTALLDIRS) $(libdir)
+- $(MKINSTALLDIRS) $(libdir)
+- $(MKINSTALLDIRS) $(includedir)
+- $(INSTALL_DATA) libomalloc.a $(libdir)
+- $(RANLIB) $(libdir)/libomalloc.a
+- $(INSTALL_DATA) libomalloc_ndebug.a $(libdir)
+- $(RANLIB) $(libdir)/libomalloc_ndebug.a
+- $(INSTALL_DATA) omalloc.o $(libdir)
+- $(INSTALL_DATA) omalloc_debug.o $(libdir)
+- $(INSTALL_DATA) omalloc.h $(includedir)
+- $(INSTALL_DATA) omlimits.h $(includedir)
+- $(INSTALL_DATA) mylimits.h $(includedir)
++ $(MKINSTALLDIRS) $(DESTDIR)$(libdir)
++ $(MKINSTALLDIRS) $(DESTDIR)$(includedir)
++ $(INSTALL_DATA) libomalloc.a $(DESTDIR)$(libdir)
++ $(RANLIB) $(DESTDIR)$(libdir)/libomalloc.a
++ $(INSTALL_DATA) libomalloc_ndebug.a $(DESTDIR)$(libdir)
++ $(RANLIB) $(DESTDIR)$(libdir)/libomalloc_ndebug.a
++ $(INSTALL_DATA) omalloc.o $(DESTDIR)$(libdir)
++ $(INSTALL_DATA) omalloc_debug.o $(DESTDIR)$(libdir)
++ $(INSTALL_DATA) omalloc.h $(DESTDIR)$(includedir)
++ $(INSTALL_DATA) omlimits.h $(DESTDIR)$(includedir)
++ $(INSTALL_DATA) mylimits.h $(DESTDIR)$(includedir)
+
+ install_all: install libomalloc_p.a
+ $(INSTALL_DATA) libomalloc_p.a $(libdir)
diff --git a/debian/rules b/debian/rules
index 25e3ff4..100783d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -2,13 +2,23 @@
DH_VERBOSE=1
+CFLAGS := $(shell dpkg-buildflags --get CFLAGS)
+CPPFLAGS := $(shell dpkg-buildflags --get CPPFLAGS)
+CXXFLAGS := $(shell dpkg-buildflags --get CXXFLAGS)
+LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
+
+CFLAGS += -Wall -Wmissing-prototypes -Wstrict-prototypes -Wpointer-arith -Wextra
+CXXFLAGS += -Wall
+
#DEB_AUTO_UPDATE_AUTOCONF = 1
#include /usr/share/cdbs/1/rules/debhelper.mk
#include /usr/share/cdbs/1/class/autotools.mk
#include /usr/share/cdbs/1/rules/patchsys-quilt.mk
# Singular doesn't use DESTDIR, so we'll try to put DESTDIR in PREFIX
-PREFIX=$(CURDIR)/debian/tmp/usr
+#PREFIX=$(CURDIR)/debian/tmp/usr
+# ouch. no
+PREFIX=/usr
DEB_CONFIGURE_EXTRA_FLAGS += --with-apint=gmp --with-gmp=/usr/lib --disable-NTL \
--with-ntl --with-NTL --without-MP --enable-gmp=/usr/lib \
--enable-Singular --enable-factory --enable-libfac \
@@ -24,7 +34,9 @@ DEB_MAKE_INVOKE += slibdir=$(PREFIX)/share/singular install_slibdir=$(PREFIX)/sh
DEB_MAKE_BUILD_TARGET = clean
DEB_MAKE_CLEAN_TARGET = distclean
DEB_MAKE_INSTALL_TARGET = install-nolns
-DEB_FIXPERMS_EXCLUDE = libsingular-3-0-4-3.so
+# DEB_FIXPERMS_EXCLUDE = libsingular-3-0-4-3.so
+#
+# FIXME:
DEB_DH_LINK_singular += usr/share/man/man1/Singular.1.gz usr/share/man/man1/ESingular.1.gz
DEB_DH_LINK_singular += usr/share/man/man1/Singular.1.gz usr/share/man/man1/TSingular.1.gz
@@ -131,9 +143,10 @@ configure-stamp:
# hack/workaround
# this is used as .so VERSION in Singular/Makefile (injected via quilt patch)
echo 3-1 > VERSION
- CFLAGS=-fPIC CXXFLAGS=-fPIC \
- CPPFLAGS="-I../omalloc -I$(CURDIR)/factory" \
- LDFLAGS="-L$(CURDIR)/factory -L$(CURDIR)/libfac -L$(CURDIR)/omalloc" \
+ CFLAGS="$(CFLAGS) -fPIC" \
+ CXXFLAGS="$(CXXFLAGS) -fPIC" \
+ CPPFLAGS="$(CPPFLAGS) -I../omalloc -I$(CURDIR)/factory" \
+ LDFLAGS="$(LDFLAGS) -L$(CURDIR)/factory -L$(CURDIR)/libfac -L$(CURDIR)/omalloc" \
./configure $(DEB_CONFIGURE_EXTRA_FLAGS)
touch $@
@@ -147,8 +160,9 @@ install: install-stamp
install-stamp: build-stamp
dh_testdir
- dh_testroot
+# dh_testroot
dh_prep
- make $(DEB_MAKE_INVOKE) install-nolns PREFIX='$(PREFIX)' MAKE='$(MAKE) $(DEB_MAKE_INVOKE) PREFIX="$(PREFIX)"'
+ DESTDIR=$(CURDIR)/debian/tmp/ $(MAKE) $(DEB_MAKE_INVOKE) install-nolns
+ # PREFIX='$(PREFIX)' MAKE='$(MAKE) $(DEB_MAKE_INVOKE) PREFIX="$(PREFIX)"'
touch $@
diff --git a/debian/singular.install b/debian/singular.install
index 95e971d..8daf458 100644
--- a/debian/singular.install
+++ b/debian/singular.install
@@ -2,5 +2,6 @@ usr/bin/Singular /usr/bin
usr/bin/ESingular /usr/bin
usr/bin/TSingular /usr/bin
-usr/bin/* usr/lib/singular
+usr/bin/*_* usr/lib/singular
+usr/bin/*lib* usr/lib/singular
#debian/singular-bin/* /usr/bin
--
an open source computer algebra system
More information about the debian-science-commits
mailing list