diff --git a/common/shlibs b/common/shlibs index f0ea3304d0c..34d4a899ce8 100644 --- a/common/shlibs +++ b/common/shlibs @@ -2891,6 +2891,7 @@ libtacacs.so.1 tacacs-4.0.4.28_1 libffms2.so.4 libffms2-2.23.1_1 libduktape.so.201 duktape-2.1.1_1 liblsmash.so.2 liblsmash-2.9.1_1 +libgiac.so.0 libgiac-1.4.9r17_1 libgnustep-base.so.1.25 gnustep-base-1.25.0_1 libtermbox.so.1 termbox-1.1.0_1 libmysofa.so.0 libmysofa-0.6_1 diff --git a/srcpkgs/giac-devel b/srcpkgs/giac-devel new file mode 120000 index 00000000000..1cb8e390fce --- /dev/null +++ b/srcpkgs/giac-devel @@ -0,0 +1 @@ +giac \ No newline at end of file diff --git a/srcpkgs/giac-doc b/srcpkgs/giac-doc new file mode 120000 index 00000000000..1cb8e390fce --- /dev/null +++ b/srcpkgs/giac-doc @@ -0,0 +1 @@ +giac \ No newline at end of file diff --git a/srcpkgs/giac/patches/fgamma.patch b/srcpkgs/giac/patches/fgamma.patch new file mode 100644 index 00000000000..c291edfe64b --- /dev/null +++ b/srcpkgs/giac/patches/fgamma.patch @@ -0,0 +1,11 @@ +--- src/first.h.orig 2017-09-22 20:44:12.000000000 +0200 ++++ src/first.h 2017-11-14 15:26:53.529711489 +0100 +@@ -503,7 +503,7 @@ + #if defined(__MINGW_H) || defined(VISUALC) // FIXME gamma, not used + inline float fgamma(float f1){ return f1; } + #else +-inline float fgamma(float f1){ return gammaf(f1); } // or tgammaf(f1) on some versions of emscripten ++inline float fgamma(float f1){ return tgammaf(f1); } // or tgammaf(f1) on some versions of emscripten + #endif + #endif + inline float atan2f(float f1,float f2,int rad){ if (rad) return atan2f(f1,f2); else return atan2f(f1,f2)*180/M_PI;} diff --git a/srcpkgs/giac/patches/malloc.patch b/srcpkgs/giac/patches/malloc.patch new file mode 100644 index 00000000000..3f2b05b37d0 --- /dev/null +++ b/srcpkgs/giac/patches/malloc.patch @@ -0,0 +1,11 @@ +--- src/History.cc.orig 2017-10-02 10:23:46.000000000 +0200 ++++ src/History.cc 2017-11-14 15:42:12.119849965 +0100 +@@ -3828,7 +3828,7 @@ + // mode_s += "Time: "; + // double t=double(clock()); + // mode_s += xcas::print_DOUBLE_(t/CLOCKS_PER_SEC); +-#ifdef HAVE_MALLOC_H // ++#if defined HAVE_MALLOC_H && defined __GLIBC__ // + struct mallinfo mem=mallinfo(); + double memd=mem.arena+mem.hblkhd; + mode_s +=xcas::print_DOUBLE_(memd/1048576); diff --git a/srcpkgs/giac/template b/srcpkgs/giac/template new file mode 100644 index 00000000000..a87a0047b18 --- /dev/null +++ b/srcpkgs/giac/template @@ -0,0 +1,47 @@ +# Template file for 'giac' +pkgname=giac +version=1.4.9r17 +revision=1 +wrksrc="${pkgname}-${version/r*}" +build_style=gnu-configure +makedepends="fltk-devel gmp-devel gsl-devel lapack-devel + libjpeg-turbo-devel libpng-devel readline-devel" +depends="desktop-file-utils hicolor-icon-theme" +short_desc="Free computer algebra system" +maintainer="cr6git " +homepage="https://www-fourier.ujf-grenoble.fr/~parisse/giac.html" +license="GPL-3" +distfiles="https://www-fourier.ujf-grenoble.fr/~parisse/debian/dists/stable/main/source/${pkgname}_${version/r/-}.tar.gz" +checksum=5d2d5856b58b882509428e00b26bee64bee468966bbe4b5423b74768c0e14b39 + +post_install() { + # remove duplicates + rm -r ${DESTDIR}/usr/share/doc +} + +libgiac_package() { + short_desc+=" - runtime library" + pkg_install() { + vmove "usr/lib/*.so.*" + } +} + +giac-devel_package() { + short_desc+=" - development files" + depends="${sourcepkg}>=${version}_${revision} $makedepends" + pkg_install() { + vmove usr/include + vmove "usr/lib/*.a" + vmove "usr/lib/*.so" + } +} + +giac-doc_package() { + short_desc+=" - Documentation and Examples" + pkg_install() { + vmove "usr/share/giac/doc" + vmove "usr/share/giac/examples" + find ${PKGDESTDIR} -name "Makefile*" -delete + } +} + diff --git a/srcpkgs/libgiac b/srcpkgs/libgiac new file mode 120000 index 00000000000..1cb8e390fce --- /dev/null +++ b/srcpkgs/libgiac @@ -0,0 +1 @@ +giac \ No newline at end of file