diff options
Diffstat (limited to 'dev-libs/libmissing/libmissing-1.1.0.ebuild')
-rw-r--r-- | dev-libs/libmissing/libmissing-1.1.0.ebuild | 171 |
1 files changed, 0 insertions, 171 deletions
diff --git a/dev-libs/libmissing/libmissing-1.1.0.ebuild b/dev-libs/libmissing/libmissing-1.1.0.ebuild deleted file mode 100644 index a60e94ec453f..000000000000 --- a/dev-libs/libmissing/libmissing-1.1.0.ebuild +++ /dev/null @@ -1,171 +0,0 @@ -# Copyright 2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 - -inherit autotools - -# NOTE: PV is the libtool version number current:revision:age - -DESCRIPTION="Library with missing functions based on GNUlib" -HOMEPAGE="https://prefix.gentoo.org" -GIT_TAG="b451121ab45497e78cb6f612c8673a9705193391" -SRC_URI="https://git.savannah.gnu.org/cgit/gnulib.git/snapshot/gnulib-${GIT_TAG}.tar.gz" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~ppc-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris" -#IUSE="static-libs" # dynamic won't work :( - -DEPEND="" -RDEPEND="${DEPEND}" -BDEPEND="" - -S="${WORKDIR}/gnulib-${GIT_TAG}" - -src_prepare() { - default - - # create a config file with just the definitions we need - mkdir extern-inline || die - cd extern-inline || die - - cat > configure.ac <<- EOS - AC_PREREQ([2.69]) - AC_INIT([${PN}], [${PV}], [prefix@gentoo.org]) - - AC_CONFIG_MACRO_DIR([../m4]) - AC_CONFIG_HEADER([missing-include.h]) - - gl_EXTERN_INLINE - EOS - - eautoreconf - sed -e '1,/PACKAGE_VERSION/d' missing-include.h.in \ - > "${T}"/missing-include.h - cd .. || die - - mkdir "${PN}" || die - cd "${PN}" || die - cat > configure.ac <<- EOS - AC_PREREQ([2.69]) - AC_INIT([${PN}], [${PV}], [prefix@gentoo.org]) - AM_INIT_AUTOMAKE - LT_INIT - - AC_CONFIG_MACRO_DIR([m4]) - AC_CONFIG_HEADER([config.h]) - - AC_PROG_CC - gl_INIT - gl_EARLY - - AC_CONFIG_FILES([Makefile lib/Makefile]) - - AC_OUTPUT - EOS - - cat > Makefile.am <<- EOS - SUBDIRS = lib - EOS - - local modules - local platform - local rev - - case "${CHOST}" in - *-apple-darwin*) - rev=${CHOST##*-darwin} - platform="Mac OS X 10.$((rev - 4))" - ;; - *-solaris2.*) - rev=${CHOST##*-solaris2.} - # we only support Solaris 10 (and perhaps 9) and up, so we - # don't have to bother about 2.x, just X - platform="Solaris ${rev}" - ;; - esac - - # blacklist some modules that cause collisions - # iconv provided by virtual/iconv -> sys-libs/libiconv - modules=( $( - cd "${S}"/doc/posix-functions - grep -A1 "This function is missing" *.texi | \ - grep "${platform}" | \ - sed -e 's:^\(.[^-]*\)-.*$:\1:' | \ - xargs sed -n 's/^Gnulib module: \([a-z].*\)$/\1/p' | \ - sed -e 's: or .*$::' -e 's:, :\n:g' | \ - sort -u | \ - grep -v "iconv" - ) ) - - # get platform specific set of missing functions - einfo "Including sources for missing functions on ${platform}:" - einfo "${modules[*]}" - "${S}"/gnulib-tool -S \ - --import \ - --lib=libmissing \ - --libtool \ - --no-vc-files \ - --no-cache-modules \ - "${modules[@]}" - - sed -i -e '/^noinst_LTLIBRARIES /s/noinst_/lib_/' lib/Makefile.am || die - echo "libmissing_la_LDFLAGS += -version-info ${PV//./:}" >> lib/Makefile.am - cat >> lib/Makefile.am << 'EOS' -install-data-local: $(BUILT_SOURCES) - @for hdr in $(BUILT_SOURCES); do \ - $(INSTALL_HEADER) -D "$$hdr" $(DESTDIR)$(includedir)/$${hdr}; \ - done; -EOS - - eautoreconf -} - -src_configure() { - cd "${PN}" || die - - # ensure we don't pick up installed libmissing - export CPPFLAGS+="-DDISABLE_LIBMISSING" # disable libmissing headers - export BINUTILS_CONFIG_DISABLE_MISSING=1 # disable -lmissing from ldwrapper - export CPPFLAGS="${CPPFLAGS/-I${EPREFIX}\/usr\/include\/missing/}" - export LIBS="${LIBS/-lmissing/}" - einfo "CPPFLAGS: ${CPPFLAGS}" - einfo "LIBS: ${LIBS}" - - # gnulib cannot be used a shared library, doing so results in stack - # protector checks failing for reasons yet unknown to me - econf --disable-shared --enable-static -} - -src_compile() { - cd "${PN}" || die - default -} - -src_install() { - cd "${PN}" || die - - default - - rm -f "${ED}"/usr/lib/libmissing.la || die - - cd "${ED}/usr/include" || die - - # fix config.h dependency so we can can distribute it without - local f - for f in $(grep "_GL_INLINE_HEADER_BEGIN" -l *.h */*.h) ; do - cat "${T}"/missing-include.h "${f}" > "${f}.new" - [[ -s "${f}.new" ]] && mv "${f}.new" "${f}" - done - - # modify all header-files so we can disable them and that they won't - # clash with gnulib-based packages - for f in *.h */*.h ; do - sed -i \ - -e '1i#ifdef DISABLE_LIBMISSING\n# include_next <'"${f}"'>\n#else' \ - -e '$a#endif /* DISABLE_LIBMISSING */' \ - -e 's/_GL_/_LIBMISSING_/g' \ - "${f}" || die - done -} |