From d16f45da155f04acb3fdd94bc29d8af804406d78 Mon Sep 17 00:00:00 2001 From: "Andreas K. Hüttel" Date: Mon, 25 Sep 2017 21:13:23 +0200 Subject: 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 --- sci-astronomy/esomidas/esomidas-17.02-r1.ebuild | 149 +++++++++++++++++++++ .../esomidas/files/esomidas-17.02-rpc.patch | 33 +++++ sci-astronomy/esomidas/metadata.xml | 3 + 3 files changed, 185 insertions(+) create mode 100644 sci-astronomy/esomidas/esomidas-17.02-r1.ebuild create mode 100644 sci-astronomy/esomidas/files/esomidas-17.02-rpc.patch (limited to 'sci-astronomy') 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. + + Build against net-libs/libtirpc for RPC support + -- cgit v1.2.3-65-gdbad