diff options
author | Connor Behan | 2015-06-08 15:21:30 -0400 |
---|---|---|
committer | Connor Behan | 2015-06-08 15:21:30 -0400 |
commit | c29326187aba75a296d164dd1efb423c24ad002d (patch) | |
tree | a93f71ca00cd8e6419a79b48e8438137b75607ae | |
download | aur-c29326187aba75a296d164dd1efb423c24ad002d.tar.gz |
Initial import
-rw-r--r-- | .SRCINFO | 50 | ||||
-rw-r--r-- | PKGBUILD | 86 | ||||
-rw-r--r-- | default_comment.patch | 44 | ||||
-rw-r--r-- | dlmodule.patch | 12 | ||||
-rw-r--r-- | fortran.patch | 26 | ||||
-rw-r--r-- | grace-mimetypes | 7 | ||||
-rw-r--r-- | grace.desktop | 9 | ||||
-rw-r--r-- | grace.install | 14 | ||||
-rw-r--r-- | grace.png | bin | 0 -> 345 bytes | |||
-rw-r--r-- | handle_nans.patch | 20 | ||||
-rw-r--r-- | longer_formulas.patch | 12 | ||||
-rw-r--r-- | meaningful_timestamp.patch | 12 | ||||
-rw-r--r-- | mkstemp.patch | 55 | ||||
-rw-r--r-- | netcdf_fftw2.patch | 33 | ||||
-rw-r--r-- | pdfdrv.patch | 11 |
15 files changed, 391 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO new file mode 100644 index 000000000000..11c3386d3732 --- /dev/null +++ b/.SRCINFO @@ -0,0 +1,50 @@ +pkgbase = grace-openmotif + pkgdesc = 2D plotting tool + pkgver = 5.1.25 + pkgrel = 1 + url = http://plasma-gate.weizmann.ac.il/Grace/ + install = grace.install + arch = i686 + arch = x86_64 + license = GPL + depends = libjpeg + depends = libpng + depends = openmotif + depends = t1lib + depends = zlib + depends = netcdf + depends = xbae + depends = pdflib-lite + depends = xdg-utils + provides = grace + conflicts = grace + replaces = grace + source = ftp://plasma-gate.weizmann.ac.il/pub/grace/src/grace5/grace-5.1.25.tar.gz + source = mkstemp.patch + source = netcdf_fftw2.patch + source = fortran.patch + source = dlmodule.patch + source = pdfdrv.patch + source = longer_formulas.patch + source = default_comment.patch + source = meaningful_timestamp.patch + source = handle_nans.patch + source = grace.png + source = grace-mimetypes + source = grace.desktop + md5sums = c0482b1f18b113192946a96f5ff35a4d + md5sums = cc9183f093cfb4da3327e725ba574f4a + md5sums = 28735e961bd0adf61810cda1932de034 + md5sums = 03702b4503676fb14dbb9afe003f0b8c + md5sums = ca0dae0fde7ec34acbd73a2fae04e656 + md5sums = 7715ca2b98be6c9bc4e28ab30c9ee069 + md5sums = 35ed21fed6db617c053ca15deccaca8c + md5sums = ecb013fe77b5aa4d6d8eeb009bff7213 + md5sums = 9ec0b3945719528bb7bcd948d5078080 + md5sums = abc9f5ebc490e7049c30208dc5fb9835 + md5sums = 0ccd7a766cb0c84934b60c264d1a1e41 + md5sums = 3beba5237f56a2ff28b6cd878865b25c + md5sums = 3b84533b7d54b4705232f4dfa0923c58 + +pkgname = grace-openmotif + diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 000000000000..6f6374b1b93c --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,86 @@ +# Contributor: Bernhard Walle <bernhard.walle@gmx.de> +# Contributor: Sergej Pupykin <sergej@aur.archlinux.org> +# Contributor: damir <damir@archlinux.org> +# Contributor: Damir Perisa <damir.perisa@bluewin.ch> +# Contributor: Connor Behan <connor.behan@gmail.com> +# and patches from http://sources.gentoo.org/viewcvs.py/gentoo-x86/sci-visualization/grace/ +# AUR Category: science + +pkgname=grace-openmotif +pkgver=5.1.25 +pkgrel=1 +pkgdesc="2D plotting tool" +arch=(i686 x86_64) +url="http://plasma-gate.weizmann.ac.il/Grace/" +depends=('libjpeg' 'libpng' 'openmotif' 't1lib' 'zlib' 'netcdf' 'xbae' 'pdflib-lite' 'xdg-utils') +replaces=('grace') +conflicts=('grace') +provides=('grace') +license=('GPL') +install=grace.install +# patches +# mkstemp.patch : move tmpnam to mkstemp (adapted from debian) +# netcdf_fftw2.patch : fix configure instead of aclocal.m4 +# fortran.patch : fix for missing defines when fortran is disabled +# dlmodule.patch pdfdrv.patch : fix a leak and pdf driver (from freebsd) +source=(ftp://plasma-gate.weizmann.ac.il/pub/grace/src/grace5/grace-$pkgver.tar.gz \ + mkstemp.patch \ + netcdf_fftw2.patch \ + fortran.patch \ + dlmodule.patch \ + pdfdrv.patch \ + longer_formulas.patch \ + default_comment.patch \ + meaningful_timestamp.patch \ + handle_nans.patch \ + grace.png \ + grace-mimetypes \ + grace.desktop) + + +build() { + cd "$srcdir"/grace-$pkgver + grep -rl "'H', TRUE" src | xargs sed -i -e "s/'H', TRUE/'H', FALSE/g" + +# patch -Np1 < ../netcdf_fftw2.patch + patch -Np1 < ../mkstemp.patch + patch -Np1 < ../fortran.patch + patch -Np1 < ../dlmodule.patch + patch -Np1 < ../pdfdrv.patch + patch -Np1 < ../longer_formulas.patch + patch -Np1 < ../default_comment.patch + patch -Np1 < ../meaningful_timestamp.patch + patch -Np1 < ../handle_nans.patch + + ./configure --prefix=/usr --exec-prefix=/usr \ + --enable-grace-home=/usr/share/grace \ + --disable-xmhtml \ + --without-bundled-xbae \ + --without-bundled-t1lib \ + --with-fftw \ + --with-f77=/usr/bin/gfortran \ + --with-helpviewer="xdg-open %s" \ + --with-editor="xdg-open %s" \ + --with-printcmd="lpr" +# --with-fftw-library=/usr/lib/libdfftw.a + + make +} + +package() { + cd "$srcdir"/grace-$pkgver + make DESTDIR="$pkgdir" install + + cd "$pkgdir"/usr/share/grace && mv bin ../../ + + # Desktop integration + install -D -m644 "$srcdir/grace.png" \ + "$pkgdir/usr/share/pixmaps/grace.png" + + install -D -m644 "$srcdir/grace.desktop" \ + "$pkgdir/usr/share/applications/grace.desktop" + + install -D -m644 "$srcdir/grace-mimetypes" "$pkgdir/usr/share/mime/packages/grace.xml" +} + +md5sums=('c0482b1f18b113192946a96f5ff35a4d' 'cc9183f093cfb4da3327e725ba574f4a' '28735e961bd0adf61810cda1932de034' '03702b4503676fb14dbb9afe003f0b8c' 'ca0dae0fde7ec34acbd73a2fae04e656' '7715ca2b98be6c9bc4e28ab30c9ee069' '35ed21fed6db617c053ca15deccaca8c' 'ecb013fe77b5aa4d6d8eeb009bff7213' '9ec0b3945719528bb7bcd948d5078080' 'abc9f5ebc490e7049c30208dc5fb9835' '0ccd7a766cb0c84934b60c264d1a1e41' '3beba5237f56a2ff28b6cd878865b25c' '3b84533b7d54b4705232f4dfa0923c58') diff --git a/default_comment.patch b/default_comment.patch new file mode 100644 index 000000000000..773370b3e719 --- /dev/null +++ b/default_comment.patch @@ -0,0 +1,44 @@ +diff -ru grace-5.1.23.orig/src/setwin.c grace-5.1.23/src/setwin.c +--- grace-5.1.23.orig/src/setwin.c 2013-12-26 14:12:41.000000000 -0800 ++++ grace-5.1.23/src/setwin.c 2013-12-26 16:12:58.000000000 -0800 +@@ -758,6 +758,7 @@ + char *formula[MAX_SET_COLS]; + int res; + int setno, gno; ++ int comment_chars; + grarr *t; + + gno = levalui.gno; +@@ -814,9 +815,11 @@ + } + + set_parser_setno(gno, setno); ++ comment_chars = 0; + + for (i = 0; i < nscols; i++) { + char buf[32], *expr; ++ comment_chars += strlen(formula[i]); + + /* preparing the expression */ + sprintf(buf, "GRAPH[%d].SET[%d].%s = ", gno, setno, dataset_colname(i)); +@@ -838,6 +841,20 @@ + } + } + ++ char *comment = malloc((comment_chars + 2 * nscols + 1) * sizeof(char)); ++ strcpy(comment, "("); ++ for (i = 0; i < nscols; i++) { ++ strcat(comment, formula[i]); ++ ++ if (i != (nscols - 1)) { ++ strcat(comment, ", "); ++ } ++ } ++ strcat(comment, ")"); ++ comment[comment_chars + 2 * nscols] = '\0'; ++ setcomment(gno, setno, comment); ++ free(comment); ++ + XCFREE(t->data); + t->length = 0; + diff --git a/dlmodule.patch b/dlmodule.patch new file mode 100644 index 000000000000..2ea6ef8fd6bc --- /dev/null +++ b/dlmodule.patch @@ -0,0 +1,12 @@ +--- grace-5.1.22/src/dlmodule.c 2005-11-13 07:45:16.000000000 +0900 ++++ grace-5.1.22.new/src/dlmodule.c 2008-06-16 15:28:33.000000000 +0900 +@@ -89,6 +89,9 @@ + return RETURN_FAILURE; + } + ++ /* clear error indicator */ ++ dlerror(); ++ + newkey.data = dlsym(handle, dl_function); + if (!newkey.data && (error = dlerror()) != NULL) { + errmsg(error); diff --git a/fortran.patch b/fortran.patch new file mode 100644 index 000000000000..f3d859e95060 --- /dev/null +++ b/fortran.patch @@ -0,0 +1,26 @@ +--- grace-5.1.22/grace_np/gracef_np.c 2008-03-03 11:45:12.000000000 +0000 ++++ grace-5.1.22.new/grace_np/grace_np/gracef_np.c 2008-03-03 12:05:37.000000000 +0000 +@@ -1,5 +1,11 @@ + #include <config.h> + ++#ifdef NEED_F77_UNDERSCORE ++# define F77_FNAME(fname) fname ## _ ++#else ++# define F77_FNAME(fname) fname ++#endif ++ + #if defined(WITH_F77_WRAPPER) + + #include <stdio.h> +@@ -8,11 +14,6 @@ + + #include "grace_np.h" + +-#ifdef NEED_F77_UNDERSCORE +-# define F77_FNAME(fname) fname ## _ +-#else +-# define F77_FNAME(fname) fname +-#endif + + typedef void (*GraceFortranFunctionType) (const char *str, int len); + static GraceFortranFunctionType fortran_error = (GraceFortranFunctionType) 0; diff --git a/grace-mimetypes b/grace-mimetypes new file mode 100644 index 000000000000..1018e3b36ed3 --- /dev/null +++ b/grace-mimetypes @@ -0,0 +1,7 @@ +<?xml version="1.0"?> +<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'> + <mime-type type="application/grace"> + <comment>xmgrace format</comment> + <glob pattern="*.agr"/> + </mime-type> +</mime-info> diff --git a/grace.desktop b/grace.desktop new file mode 100644 index 000000000000..8209cf606424 --- /dev/null +++ b/grace.desktop @@ -0,0 +1,9 @@ +[Desktop Entry] +Encoding=UTF-8 +Terminal=false +Name=Grace +Type=Application +Icon=/usr/share/pixmaps/grace.png +Exec=/usr/bin/xmgrace %f +Comment=An application for 2D plotting +Categories=Science;X-Plotting; diff --git a/grace.install b/grace.install new file mode 100644 index 000000000000..702c510609bb --- /dev/null +++ b/grace.install @@ -0,0 +1,14 @@ +post_install() { + echo "update mime database..." + update-mime-database usr/share/mime > /dev/null + echo "update desktop mime database..." + update-desktop-database -q +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/grace.png b/grace.png Binary files differnew file mode 100644 index 000000000000..6f95f99b2e98 --- /dev/null +++ b/grace.png diff --git a/handle_nans.patch b/handle_nans.patch new file mode 100644 index 000000000000..ef2b1f5d1ad7 --- /dev/null +++ b/handle_nans.patch @@ -0,0 +1,20 @@ +diff -ru grace-5.1.23.orig/src/ssdata.c grace-5.1.23/src/ssdata.c +--- grace-5.1.23.orig/src/ssdata.c 2015-03-01 16:13:28.394687611 -0500 ++++ grace-5.1.23/src/ssdata.c 2015-03-01 16:06:15.303700533 -0500 +@@ -275,8 +275,14 @@ + (*nncols)++; + } else { + /* last resort - treat the field as string, even if not quoted */ +- (*formats)[ncols] = FFORMAT_STRING; +- (*nscols)++; ++ if (!strncmp(token, "inf", 3) || !strncmp(token, "-inf", 4) || ++ !strncmp(token, "nan", 3) || !strncmp(token, "-nan", 4)) { ++ (*formats)[ncols] = FFORMAT_NUMBER; ++ (*nncols)++; ++ } else { ++ (*formats)[ncols] = FFORMAT_STRING; ++ (*nscols)++; ++ } + } + } + xfree(buf); diff --git a/longer_formulas.patch b/longer_formulas.patch new file mode 100644 index 000000000000..2b4861bc0d75 --- /dev/null +++ b/longer_formulas.patch @@ -0,0 +1,12 @@ +diff -ru grace-5.1.23.orig/src/setwin.c grace-5.1.23/src/setwin.c +--- grace-5.1.23.orig/src/setwin.c 2013-12-26 14:12:41.000000000 -0800 ++++ grace-5.1.23/src/setwin.c 2013-12-26 14:16:56.000000000 -0800 +@@ -695,7 +695,7 @@ + char **cells[MAX_SET_COLS]; + char *rowlabels[MAX_SET_COLS]; + short column_widths[1] = {50}; +- int column_maxlengths[1] = {256}; ++ int column_maxlengths[1] = {8192}; + + levalui.top = CreateDialogForm(app_shell, "Load & evaluate"); + diff --git a/meaningful_timestamp.patch b/meaningful_timestamp.patch new file mode 100644 index 000000000000..4a09adcba246 --- /dev/null +++ b/meaningful_timestamp.patch @@ -0,0 +1,12 @@ +diff -ru grace-5.1.23.orig/src/utils.c grace-5.1.23/src/utils.c +--- grace-5.1.23.orig/src/utils.c 2013-12-26 14:12:41.000000000 -0800 ++++ grace-5.1.23/src/utils.c 2013-12-26 14:13:25.000000000 -0800 +@@ -1342,6 +1342,8 @@ + time_t time_value; + char *str; + ++ if (!inwin) return; ++ + (void) time(&time_value); + tm = *localtime(&time_value); + str = asctime(&tm); diff --git a/mkstemp.patch b/mkstemp.patch new file mode 100644 index 000000000000..402a5162c584 --- /dev/null +++ b/mkstemp.patch @@ -0,0 +1,55 @@ +diff -Naur grace-5.1.22/src/editpwin.c grace-5.1.22.new/src/editpwin.c +--- grace-5.1.22/src/editpwin.c 2006-06-03 17:19:52.000000000 -0400 ++++ grace-5.1.22.new/src/editpwin.c 2008-07-26 12:45:21.000000000 -0400 +@@ -776,12 +776,12 @@ + */ + void do_ext_editor(int gno, int setno) + { +- char *fname, ebuf[256]; ++ char fname[64], ebuf[256]; + FILE *cp; + int save_autos; + +- fname = tmpnam(NULL); +- cp = grace_openw(fname); ++ strcpy(fname, "grace-XXXXXX"); ++ cp = fdopen(mkstemp(fname), "wb"); + if (cp == NULL) { + return; + } +diff -Naur grace-5.1.22/src/plotone.c grace-5.1.22.new/src/plotone.c +--- grace-5.1.22/src/plotone.c 2005-05-19 16:30:25.000000000 -0400 ++++ grace-5.1.22.new/src/plotone.c 2008-07-26 12:45:40.000000000 -0400 +@@ -121,19 +121,27 @@ + sprintf(print_file, "%s.%s", get_docbname(), dev.fext); + } + strcpy(fname, print_file); ++ prstream = grace_openw(fname); + } else { ++ int hdfd; + s = get_print_cmd(); + if (s == NULL || s[0] == '\0') { + errmsg("No print command defined, output aborted"); + return; + } +- tmpnam(fname); +- /* VMS doesn't like extensionless files */ +- strcat(fname, ".prn"); ++ strcpy(fname, "grace-hardcopy-XXXXXX"); ++ hdfd=mkstemp(fname); ++ if (hdfd == -1) { ++ errmsg("Could not create a temporary file, output aborted."); ++ return; ++ } ++ prstream = fdopen(hdfd, "wb"); ++ if (prstream == NULL) { ++ errmsg("Could not create a temporary file, output aborted."); ++ return; ++ } + } + +- prstream = grace_openw(fname); +- + if (prstream == NULL) { + return; + } diff --git a/netcdf_fftw2.patch b/netcdf_fftw2.patch new file mode 100644 index 000000000000..6e3ea58f57ea --- /dev/null +++ b/netcdf_fftw2.patch @@ -0,0 +1,33 @@ +diff -Naur grace-5.1.22/configure grace-5.1.22.new/configure +--- grace-5.1.22/configure 2007-02-16 22:44:49.000000000 +0000 ++++ grace-5.1.22.new/configure 2007-09-28 23:03:29.000000000 +0100 +@@ -15614,7 +15614,7 @@ + int main(void) { + char *vlib; + vlib = nc_inq_libvers(); +- if (strcmp(vlib, "3.0") < 0) { ++ if (((vlib[0] == '"') && (strcmp(vlib, "\"3.0") < 0)) || ((vlib[0] != '"') && (strcmp(vlib, "3.0") < 0))){ + exit(1); + } + exit(0); +@@ -15722,7 +15722,7 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ + +-#include <fftw.h> ++#include <dfftw.h> + #include <string.h> + int main(void) { + char *vlib = (char *) fftw_version; +diff -Naur grace-5.1.22/src/fourier.c grace-5.1.22.new/src/fourier.c +--- grace-5.1.22/src/fourier.c 2004-07-04 03:47:45.000000000 +0700 ++++ grace-5.1.22.new/src/fourier.c 2009-06-16 02:51:37.229858237 +0700 +@@ -230,7 +230,7 @@ + #else + /* Start of new FFTW-based transforms by Marcus H. Mendenhall */ + +-#include <fftw.h> ++#include <dfftw.h> + #include <string.h> + + static char *wisdom_file=0; diff --git a/pdfdrv.patch b/pdfdrv.patch new file mode 100644 index 000000000000..cb82e8eed181 --- /dev/null +++ b/pdfdrv.patch @@ -0,0 +1,11 @@ +--- grace-5.1.22/src/pdfdrv.c 2004-08-05 04:37:47.000000000 +0900 ++++ grace-5.1.22.new/src/pdfdrv.c 2008-06-16 15:29:00.000000000 +0900 +@@ -57,6 +57,8 @@ + # include "motifinc.h" + #endif + ++#define PDF_set_fillrule(handle, rule) PDF_set_parameter(handle, "fillrule", rule) ++ + static void pdf_error_handler(PDF *p, int type, const char* msg); + + static unsigned long page_scale; |