From 4b19be30aa626b327c885dae62c559ec0e9fb935 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sun, 13 Oct 2019 22:19:36 +0100 Subject: gentoo resync : 13.10.2019 --- dev-libs/libmissing/Manifest | 2 +- dev-libs/libmissing/libmissing-1.0.0-r1.ebuild | 129 ------------------- dev-libs/libmissing/libmissing-1.1.0.ebuild | 171 +++++++++++++++++++++++++ 3 files changed, 172 insertions(+), 130 deletions(-) delete mode 100644 dev-libs/libmissing/libmissing-1.0.0-r1.ebuild create mode 100644 dev-libs/libmissing/libmissing-1.1.0.ebuild (limited to 'dev-libs/libmissing') diff --git a/dev-libs/libmissing/Manifest b/dev-libs/libmissing/Manifest index 09d2b9c42b7f..15bd4406e065 100644 --- a/dev-libs/libmissing/Manifest +++ b/dev-libs/libmissing/Manifest @@ -1,3 +1,3 @@ DIST gnulib-b451121ab45497e78cb6f612c8673a9705193391.tar.gz 6666079 BLAKE2B e7d3b9478697067b57ab198e044f3c854128d5fe390d30947829ce4f34c695a748668c33ae19690e9927fff6df3e194a3160cb4adb7cf47235c603241c66889a SHA512 f6e165cfc0a3999c778d9f43ffc90ff9b569a77ff1e54ff5c50b12b0eddf262c24da8cd2719548574e0397535bb0eb835eef603cc74769f7876ef9db101bebec -EBUILD libmissing-1.0.0-r1.ebuild 2866 BLAKE2B 0073f790979bde93a4c361b4b086008ba10c8c0c9b78e1a838ae0552f27be192253e05150cc23d397713a8b71c0a9484c2d50608e564cb6f2e854b1e1c3e8379 SHA512 a532d9aab59b256d67be25f243091c4a0dae694fc5cd375881302c4103e573e4a5c03912607c1d02ba5a35bdcbf5ba66282b3b5f1e90ebaa54b9cb7b633a84f3 +EBUILD libmissing-1.1.0.ebuild 4144 BLAKE2B 4af50fbda40b6218926a43a0ab09e2706fa85aecb0b0a4755158894320098ade390d6dc9567b3d5a14cfb582f936503745afbd0f4c0acff9b068bdc4746c0eac SHA512 0cef22a263bd0df8ddd44901ae1c51fd888801756ff55409a887861704fa4f7bd4ff9751a0fb80c3cdd4cf8a158904be836a97be7db9bfb3fbd61a7b6a1159b0 MISC metadata.xml 393 BLAKE2B 8fdadb018197632713de833a7b64d961fa8ce1b86db6996fad32484fa09eda403a7bbcb50d3502ac02888b44d56971b0241a9e0902366f10d79017d50e46289b SHA512 8b5739afeacf385f9399745c6396506060f425376e47e0fdc9ca05c59608dd9e82bee2dc385f34c27f96ad8df41753fe05dd90886a81f613a910c76d50bae422 diff --git a/dev-libs/libmissing/libmissing-1.0.0-r1.ebuild b/dev-libs/libmissing/libmissing-1.0.0-r1.ebuild deleted file mode 100644 index c1371f6d4faf..000000000000 --- a/dev-libs/libmissing/libmissing-1.0.0-r1.ebuild +++ /dev/null @@ -1,129 +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" - -DEPEND="" -RDEPEND="${DEPEND}" -BDEPEND="" - -S="${WORKDIR}/gnulib-${GIT_TAG}" - -src_prepare() { - default - - 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)/missing/$${hdr}; \ - done; -EOS - - eautoreconf -} - -src_configure() { - cd "${PN}" || die - - # ensure we don't pick up installed libmissing - export CPPFLAGS="${CPPFLAGS/-I${EPREFIX}\/usr\/include\/missing/}" - export LIBS="${LIBS/-lmissing/}" - einfo "CPPFLAGS: ${CPPFLAGS}" - einfo "LIBS: ${LIBS}" - - default -} - -src_compile() { - cd "${PN}" || die - default -} - -src_install() { - cd "${PN}" || die - default - - rm "${ED}"/usr/lib/libmissing.la \ - "$(use static-libs || echo "${ED}"/usr/lib/libmissing.a)" || die -} diff --git a/dev-libs/libmissing/libmissing-1.1.0.ebuild b/dev-libs/libmissing/libmissing-1.1.0.ebuild new file mode 100644 index 000000000000..b7099ebe7775 --- /dev/null +++ b/dev-libs/libmissing/libmissing-1.1.0.ebuild @@ -0,0 +1,171 @@ +# 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 || die +} + +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 +} -- cgit v1.2.3