summaryrefslogtreecommitdiff
path: root/dev-libs/libmissing/libmissing-1.1.0.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/libmissing/libmissing-1.1.0.ebuild')
-rw-r--r--dev-libs/libmissing/libmissing-1.1.0.ebuild171
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
-}