summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndreas K. Hüttel <dilfridge@gentoo.org>2017-09-25 21:13:23 +0200
committerAndreas K. Hüttel <dilfridge@gentoo.org>2017-09-25 21:14:03 +0200
commitd16f45da155f04acb3fdd94bc29d8af804406d78 (patch)
treed5de274f9cb69149651de00f76fb74e639aef5a5 /sci-astronomy/esomidas
parentapp-arch/lz4: marked ~x64-macos (diff)
downloadgentoo-d16f45da155f04acb3fdd94bc29d8af804406d78.tar.gz
gentoo-d16f45da155f04acb3fdd94bc29d8af804406d78.tar.bz2
gentoo-d16f45da155f04acb3fdd94bc29d8af804406d78.zip
sci-astronomy/esomidas: Revision bump for libtirpc support, bug 631378
Closes: https://bugs.gentoo.org/631378 Package-Manager: Portage-2.3.10, Repoman-2.3.3
Diffstat (limited to 'sci-astronomy/esomidas')
-rw-r--r--sci-astronomy/esomidas/esomidas-17.02-r1.ebuild149
-rw-r--r--sci-astronomy/esomidas/files/esomidas-17.02-rpc.patch33
-rw-r--r--sci-astronomy/esomidas/metadata.xml3
3 files changed, 185 insertions, 0 deletions
diff --git a/sci-astronomy/esomidas/esomidas-17.02-r1.ebuild b/sci-astronomy/esomidas/esomidas-17.02-r1.ebuild
new file mode 100644
index 000000000000..70312bb39753
--- /dev/null
+++ b/sci-astronomy/esomidas/esomidas-17.02-r1.ebuild
@@ -0,0 +1,149 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils fortran-2 toolchain-funcs flag-o-matic
+
+# MIDVERS is actually used by MIDAS configuration scripts
+export MIDVERS="17FEBpl1.2"
+
+DESCRIPTION="European Southern Observatory Munich Image Data Analysis System"
+HOMEPAGE="http://www.eso.org/projects/esomidas/"
+SRC_URI="ftp://ftp.eso.org/pub/midaspub/17FEB/sources/${MIDVERS}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0/8"
+KEYWORDS="~amd64 ~x86"
+
+IUSE="+libtirpc"
+
+RDEPEND="
+ sys-libs/readline:0=
+ x11-libs/motif:0=
+ x11-libs/libX11:=
+ x11-libs/libXt:=
+ !libtirpc? ( sys-libs/glibc[rpc(-)] )
+ libtirpc? ( net-libs/libtirpc )
+"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MIDVERS}"
+
+PATCHES=(
+ "${FILESDIR}/${P}-output_to_stdout.patch"
+ "${FILESDIR}/${P}-gentoo-setup.patch"
+ "${FILESDIR}/${P}-rpc.patch"
+)
+
+src_prepare() {
+ default
+ # variables for all phases and midas internal build system
+ export MIDASHOME="${WORKDIR}"
+ export MID_HOME="${S}"
+ export MID_HOME0="/usr/$(get_libdir)/esomidas/${MIDVERS}"
+ export MID_INSTALL="${MID_HOME}/install/unix"
+ export MID_SYS="${MID_HOME}/system/unix/"
+ export MID_WORK="${MIDASHOME}/midwork"
+
+ # sadly this enforces static linking
+ if use libtirpc ; then
+ RPC_OPT="-I/usr/include/tirpc"
+ RPC_LIB="-ltirpc"
+ else
+ RPC_OPT=""
+ RPC_LIB=""
+ fi
+
+ # create a gentoo option file
+ mkdir ${MID_INSTALL}/systems/Gentoo || die
+ cat >> ${MID_INSTALL}/systems/Gentoo/make_options <<-EOF
+ CC=$(tc-getCC)
+ LDCC=$(tc-getCC)
+ F77=$(tc-getFC)
+ FC=$(tc-getFC)
+ LD77_CMD=$(tc-getFC)
+ AR=$(tc-getAR)
+ RANLIB=$(tc-getRANLIB)
+ F_OPT=
+ C_OPT=
+ E_OPT=$(use amd64 && echo -Z)
+ SYS=
+ SH_OPT=-fPIC
+ SH_CMD=${MIDASHOME}/${MIDVERS}/local/make_shared
+ GUI_OPT=-DPATH_MAX=1024
+ STRIP=echo
+ EDITFLAGS=-DVOID_SIGHANDLER -DHAVE_ALLOCA -DHAVE_ALLOCA_H -DHAVE_GETPW_DECLS -DHAVE_DIRENT_H -DHAVE_STRING_H -DLinux -DHAVE_UNISTD_H -DHAVE_STDLIB_H
+ EDITLIBS=-lreadline
+ UIMX=uimxR5
+ INSTALL_FLAG=auto
+ RPC_OPT=${RPC_OPT}
+ RPC_LIB=${RPC_LIB}
+ EOF
+ sed -e "s|gcc|$(tc-getCC) \${LDFLAGS}|" \
+ ${MID_INSTALL}/systems/Linux/make_shared \
+ > ${MID_INSTALL}/systems/Gentoo/make_shared || die
+ sed -e 's|PC/Linux|Gentoo|' \
+ ${MID_INSTALL}/systems/Linux/setup \
+ > ${MID_INSTALL}/systems/Gentoo/setup || die
+
+ # gentoo readline avoids exporting the xmalloc,xrealloc and xfree
+ append-cppflags -Dxrealloc=_rl_realloc -Dxmalloc=_rl_malloc -Dxfree=_rl_free
+}
+
+src_configure() {
+ ${MID_INSTALL}/select all || die "packages selection failed"
+ ${MID_INSTALL}/preinstall -a || die "preinstallation failed"
+ ${MID_INSTALL}/install2 || die "configuration failed"
+ chmod 755 ${MID_HOME}/local/make_shared
+}
+
+src_compile() {
+ CMND_YES=2 ${MID_INSTALL}/install3 -a || die "compilation failed"
+ [[ -x ${MID_HOME}/monit/midasgo.exe ]] || die "somewhere compilation failed"
+ emake -C monit syskeys.unix
+ ${MID_SYS}/inmidas -m ${MID_WORK} -j "@ compile.all"
+ ${MID_SYS}/inmidas -m ${MID_WORK} -j "@ ascii_bin no ; bye"
+}
+
+src_test() {
+ local test_dir="${WORKDIR}/test_tmp"
+ mkdir ${test_dir} && cd ${test_dir}
+ ${MID_SYS}/inmidas -m ${MID_WORK} -j "@ vericopy ; @@ veriall -nodisplay ; bye" || die
+ test -f ${MID_WORK}/veriall_* || die "tests failed somewhere"
+ rm -rf ${test_dir}
+}
+
+src_install() {
+ yes | ${MID_SYS}/cleanmidas
+ find ${MID_HOME} \( \
+ -name "*.a" -o \
+ -name "makefile" -o \
+ -name "default.mk" -o \
+ -name "*.h" -o \
+ -name "*.inc" -o \
+ -name COPYING -o \
+ -name "*~" -o \
+ -name "*.mod" \) -delete
+ rm -rf ${MID_HOME}/libsrc/ftoc*
+ find ${MID_HOME} -type d -empty -delete
+
+ sed -e "s:^MIDVERS0=.*:MIDVERS0=${MIDVERS}:" \
+ -e "s:^MIDASHOME0=.*:MIDASHOME0=/usr/$(get_libdir)/esomidas:" \
+ -i ${MID_HOME}/system/unix/{inmidas,helpmidas,drs}
+
+ cd "${WORKDIR}"
+ dodir /usr/$(get_libdir)/esomidas
+ mv "${S}" "${ED}"${MID_HOME0}
+ chmod 0644 "${ED}"${MID_HOME0}/contrib/baches/*/*.fit \
+ "${ED}"${MID_HOME0}/contrib/baches/*/*.fmt \
+ "${ED}"${MID_HOME0}/contrib/baches/*/*.datorg \
+ "${ED}"${MID_HOME0}/contrib/baches/*/*.prg \
+ "${ED}"${MID_HOME0}/contrib/baches/*/*.README
+ find "${ED}"${MID_HOME0} -name \*.sh | xargs chmod 0755
+ chmod 0755 "${ED}"${MID_HOME0}/util/bench/brun
+
+ dosym ${MID_HOME0}/system/unix/inmidas /usr/bin/inmidas
+ dosym ${MID_HOME0}/system/unix/gomidas /usr/bin/gomidas
+ dosym ${MID_HOME0}/system/ftoc-new ${MID_HOME0}/system/good-ftoc
+}
diff --git a/sci-astronomy/esomidas/files/esomidas-17.02-rpc.patch b/sci-astronomy/esomidas/files/esomidas-17.02-rpc.patch
new file mode 100644
index 000000000000..d56ec03346c9
--- /dev/null
+++ b/sci-astronomy/esomidas/files/esomidas-17.02-rpc.patch
@@ -0,0 +1,33 @@
+diff -ruN 17FEBpl1.2.orig/lib/makefile 17FEBpl1.2/lib/makefile
+--- 17FEBpl1.2.orig/lib/makefile 2017-04-26 11:44:02.000000000 +0200
++++ 17FEBpl1.2/lib/makefile 2017-09-25 21:08:51.359595847 +0200
+@@ -58,7 +58,7 @@
+ ## Ubuntu version 13.10 on
+ ##
+ ## $(SH_CMD) -o $(LIBMIDAS_SH) *.o $(DEV_NULL)
+- $(SH_CMD) -o $(LIBMIDAS_SH) *.o -lm $(F2C_LIBS) $(DEV_NULL)
++ $(SH_CMD) -o $(LIBMIDAS_SH) *.o -lm $(F2C_LIBS) $(RPC_LIB) $(DEV_NULL)
+
+ # for the AltLinux distro we had to change the line above to:
+ # $(SH_CMD) -o $(LIBMIDAS_SH) *.o -lm $(DEV_NULL)
+diff -ruN 17FEBpl1.2.orig/libsrc/os/unix/makefile 17FEBpl1.2/libsrc/os/unix/makefile
+--- 17FEBpl1.2.orig/libsrc/os/unix/makefile 2017-04-26 11:44:32.000000000 +0200
++++ 17FEBpl1.2/libsrc/os/unix/makefile 2017-09-25 21:08:48.747583816 +0200
+@@ -19,7 +19,7 @@
+
+ include ../../../local/default.mk
+
+-CFLAGS += $(C_OPT) $(DEBUG) $(MEM_OPT) $(SH_OPT) $(OSSYS) $(SYS) -I$(INC)
++CFLAGS += $(C_OPT) $(DEBUG) $(MEM_OPT) $(SH_OPT) $(OSSYS) $(SYS) -I$(INC) $(RPC_OPT)
+
+ LIB = $(LIBDIR)/libos.a
+
+@@ -43,7 +43,7 @@
+ # testos.exe only for checking the linking process, in cannot be executed...
+
+ testos.exe: testos.o $(LIB)
+- $(LDCC) testos.o $(LIB) $(MLIB) $(SLIB) -o $@
++ $(LDCC) testos.o $(LIB) $(MLIB) $(SLIB) $(RPC_LIB) -o $@
+ $(STRIP) $@
+
+ $(LIB): $(OBJ)
diff --git a/sci-astronomy/esomidas/metadata.xml b/sci-astronomy/esomidas/metadata.xml
index 40556383b31c..8e581953fd75 100644
--- a/sci-astronomy/esomidas/metadata.xml
+++ b/sci-astronomy/esomidas/metadata.xml
@@ -13,4 +13,7 @@
surface photometry, image sharpening and decomposition, statistics and
various others.
</longdescription>
+<use>
+ <flag name="libtirpc">Build against <pkg>net-libs/libtirpc</pkg> for RPC support</flag>
+</use>
</pkgmetadata>