summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Müller <ulm@gentoo.org>2023-03-11 10:12:00 +0100
committerUlrich Müller <ulm@gentoo.org>2023-03-11 10:12:00 +0100
commit2391b86a36c37ec64eb677b4822fb3063e76bde2 (patch)
treea2712cf14e432b2faa06ec59fc0495416b58946d /x11-libs/motif
parentdev-python/bitarray: Stabilize 2.7.3 x86, #900785 (diff)
downloadgentoo-2391b86a36c37ec64eb677b4822fb3063e76bde2.tar.gz
gentoo-2391b86a36c37ec64eb677b4822fb3063e76bde2.tar.bz2
gentoo-2391b86a36c37ec64eb677b4822fb3063e76bde2.zip
x11-libs/motif: Fix vulnerabilities in lib/Xm
Bug: https://bugs.gentoo.org/900763 Signed-off-by: Ulrich Müller <ulm@gentoo.org>
Diffstat (limited to 'x11-libs/motif')
-rw-r--r--x11-libs/motif/Manifest1
-rw-r--r--x11-libs/motif/motif-2.3.8-r5.ebuild112
2 files changed, 113 insertions, 0 deletions
diff --git a/x11-libs/motif/Manifest b/x11-libs/motif/Manifest
index e466a708bc71..38f1a07f52c3 100644
--- a/x11-libs/motif/Manifest
+++ b/x11-libs/motif/Manifest
@@ -1,3 +1,4 @@
DIST motif-2.3.8-patches-2.tar.xz 4068 BLAKE2B 5466f824d71edd1d787eebe5b1fa09de5b52ffa20cdf733301722c4f1d7509af8084f226d68dcba14c2e8d15d5b1ea7d49e408eea8f710af3c0b27c86aba444c SHA512 27e10c2a5b3dec8597acb04940bb8e000fc43c325e5b6f578246ab4187ef34264940369bff1e9c999ba967e85e093434e16a447f1d4da805d0a5ab1576e5ef80
DIST motif-2.3.8-patches-4.tar.xz 4664 BLAKE2B 3f5b6f1f2196f0043586e6f58adb729cfa43756fb54afff3ddb68a6187dddb97def12a6b5bd7596b466783a502a134fea81ac18de9754ad73c5b70eb23e3ef26 SHA512 74310f26bb8c83740b8b5c20029b40d6d095ce58b61a053b751641b763ac7bf544f69be83b5b3c20caee1f247748905d6b781f53b129e24fa6a4d31cabda1b13
+DIST motif-2.3.8-patches-5.tar.xz 6156 BLAKE2B b8d1ac1f2bea3521c97b506ecb480ea92c64708376c1bd9c00b853109568527f82eb8f87bd50d78afe9e15a4c84aab51f32598a12b040f7d67ae0dee422c0366 SHA512 594b39ded4e932789baf906e5e7e3cc402f1940cba147b35ae43aba52f65522ba48a05f3193ed9f8ff5c03fed1b517bfde35b38c189e1e7169745c8b97a5d924
DIST motif-2.3.8.tar.gz 5704328 BLAKE2B 3755b7f46e50240e1e9e7046aa439fa89872e54ae5d03860383f509b6d0f09edf85bd7d92ea4d37925efd2e44401028aa2752d940c42d9cccb652b2bd1d85459 SHA512 1ab8e8eece25ef97e948592b5fa3e19d98e932695290a18b7a8e90f1aa2766bc4f082bdbc3999dff5660e684821178a149040f76bb477163e53ca06474d02b55
diff --git a/x11-libs/motif/motif-2.3.8-r5.ebuild b/x11-libs/motif/motif-2.3.8-r5.ebuild
new file mode 100644
index 000000000000..3641a9cca437
--- /dev/null
+++ b/x11-libs/motif/motif-2.3.8-r5.ebuild
@@ -0,0 +1,112 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic toolchain-funcs multilib-minimal
+
+DESCRIPTION="The Motif user interface component toolkit"
+HOMEPAGE="https://sourceforge.net/projects/motif/
+ https://motif.ics.com/"
+SRC_URI="mirror://sourceforge/project/motif/Motif%20${PV}%20Source%20Code/${P}.tar.gz
+ https://dev.gentoo.org/~ulm/distfiles/${P}-patches-5.tar.xz"
+
+LICENSE="LGPL-2.1+ MIT"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~mips ~ppc ~ppc64 ~riscv ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~x64-solaris ~x86-solaris"
+IUSE="examples jpeg +motif22-compatibility png static-libs unicode xft"
+
+RDEPEND=">=x11-libs/libX11-1.6.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXext-1.3.2[${MULTILIB_USEDEP}]
+ >=x11-libs/libXmu-1.1.1-r1[${MULTILIB_USEDEP}]
+ >=x11-libs/libXt-1.1.4[${MULTILIB_USEDEP}]
+ jpeg? ( >=media-libs/libjpeg-turbo-1.5.3-r2:0=[${MULTILIB_USEDEP}] )
+ png? ( >=media-libs/libpng-1.6.10:0=[${MULTILIB_USEDEP}] )
+ unicode? ( >=virtual/libiconv-0-r1[${MULTILIB_USEDEP}] )
+ xft? (
+ >=media-libs/fontconfig-2.10.92[${MULTILIB_USEDEP}]
+ >=x11-libs/libXft-2.3.1-r1[${MULTILIB_USEDEP}]
+ )"
+
+DEPEND="${RDEPEND}
+ x11-base/xorg-proto
+ x11-misc/xbitmaps"
+
+BDEPEND="sys-devel/flex
+ dev-util/byacc"
+
+src_prepare() {
+ eapply ../patch
+ eapply_user
+
+ # remove files generated by flex #864533
+ rm tools/wml/{wmllex,wmluiltok}.c || die
+
+ AT_M4DIR=. eautoreconf
+
+ # get around some LANG problems in make (#15119)
+ LANG=C
+
+ # bug #80421
+ filter-flags -ftracer
+
+ # feel free to fix properly if you care
+ append-flags -fno-strict-aliasing
+
+ # for Solaris Xos_r.h :(
+ [[ ${CHOST} == *-solaris2.11 ]] \
+ && append-cppflags -DNEED_XOS_R_H -DHAVE_READDIR_R_3
+
+ if use !elibc_glibc && use !elibc_musl && use unicode; then
+ # libiconv detection in configure script doesn't always work
+ # http://bugs.motifzone.net/show_bug.cgi?id=1423
+ export LIBS="${LIBS} -liconv"
+ fi
+
+ # "bison -y" causes runtime crashes #355795
+ export YACC=byacc
+
+ # remember the name of the C compiler for the native ABI
+ MY_NATIVE_CC=$(tc-getCC)
+}
+
+multilib_src_configure() {
+ ECONF_SOURCE="${S}" econf \
+ --with-x \
+ --disable-printing \
+ $(use_enable static-libs static) \
+ $(use_enable motif22-compatibility) \
+ $(use_enable unicode utf8) \
+ $(use_enable xft) \
+ $(use_enable jpeg) \
+ $(use_enable png)
+}
+
+multilib_src_compile() {
+ # The wmluiltok build tool is linked with libfl.a, so always
+ # compile it for the native ABI
+ emake -C tools/wml CC="${MY_NATIVE_CC}" LIBS="-lfl" wmluiltok
+ emake
+}
+
+multilib_src_install() {
+ emake DESTDIR="${D}" install
+
+ if multilib_is_native_abi && use examples; then
+ emake -C demos DESTDIR="${D}" install-data
+ dodir /usr/share/doc/${PF}/demos
+ mv "${ED}"/usr/share/Xm/* "${ED}"/usr/share/doc/${PF}/demos || die
+ fi
+}
+
+multilib_src_install_all() {
+ # mwm default configs
+ insinto /usr/share/X11/app-defaults
+ newins "${FILESDIR}"/Mwm.defaults Mwm
+
+ # cleanup
+ rm -rf "${ED}"/usr/share/Xm || die
+ find "${D}" -type f -name "*.la" -delete || die
+
+ dodoc BUGREPORT ChangeLog README RELEASE RELNOTES TODO
+}