blob: 42c854e636e205128d34d09cc3581b069c01cbc7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
|
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/m4.asc
inherit verify-sig
DESCRIPTION="GNU macro processor"
HOMEPAGE="https://www.gnu.org/software/m4/m4.html"
if [[ ${PV} == *_beta* ]] ; then
MY_P="${PN}-1.4.18d"
SRC_URI="https://alpha.gnu.org/gnu/${PN}/${MY_P}.tar.xz"
SRC_URI+=" verify-sig? ( https://alpha.gnu.org/gnu/${PN}/${MY_P}.tar.xz.sig )"
S="${WORKDIR}/${MY_P}"
else
SRC_URI="mirror://gnu/${PN}/${P}.tar.xz"
SRC_URI+=" https://dev.gentoo.org/~floppym/dist/${P}-test-198-sysval-r1.patch.gz"
SRC_URI+=" verify-sig? ( mirror://gnu/${PN}/${P}.tar.xz.sig )"
KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
fi
LICENSE="GPL-3"
SLOT="0"
IUSE="examples nls"
RDEPEND="
virtual/libiconv
nls? (
sys-devel/gettext
virtual/libintl
)"
DEPEND="${RDEPEND}"
# Remember: cannot dep on autoconf since it needs us
BDEPEND="app-arch/xz-utils
nls? ( sys-devel/gettext )
verify-sig? ( sec-keys/openpgp-keys-m4 )"
PATCHES=(
"${FILESDIR}"/ppc-musl.patch
"${FILESDIR}"/loong-fix-build.patch
"${FILESDIR}"/${PN}-1.4.19-make-4.4-tests.patch
"${WORKDIR}"/${P}-test-198-sysval-r1.patch
"${FILESDIR}"/${P}-fortify-source.patch
"${FILESDIR}"/${P}-race-condition-tests.patch
)
src_unpack() {
if use verify-sig ; then
# Needed for downloaded patch (which is unsigned, which is fine)
verify-sig_verify_detached "${DISTDIR}"/${P}.tar.xz{,.sig}
fi
default
}
src_prepare() {
default
# touch generated files after patching m4, to avoid activating maintainer
# mode
# remove when loong-fix-build.patch is no longer necessary
touch ./aclocal.m4 ./lib/config.hin ./configure ./doc/stamp-vti || die
find . -name Makefile.in -exec touch {} + || die
}
src_configure() {
local -a myeconfargs=(
--enable-changeword
--with-packager="Gentoo Linux"
--with-packager-version="${PVR}"
--with-packager-bug-reports="https://bugs.gentoo.org/"
$(usex nls '' '--disable-nls')
# Disable automagic dependency over libsigsegv; see bug #278026
ac_cv_libsigsegv=no
)
econf "${myeconfargs[@]}"
}
src_test() {
[[ -d /none ]] && die "m4 tests will fail with /none/" #244396
emake check
}
src_install() {
default
# autoconf-2.60 for instance, first checks gm4, then m4. If we don't have
# gm4, it might find gm4 from outside the prefix on for instance Darwin
use prefix && dosym m4 /usr/bin/gm4
if use examples ; then
dodoc -r examples
rm -f "${ED}"/usr/share/doc/${PF}/examples/Makefile*
fi
}
|