Gentoo Archives: gentoo-commits

From: Keri Harris <keri@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-lang/mercury-extras/
Date: Tue, 15 Sep 2020 11:08:02
Message-Id: 1600168061.86466ba3088d0d222daade58230ede2729dc4bed.keri@gentoo
1 commit: 86466ba3088d0d222daade58230ede2729dc4bed
2 Author: Keri Harris <keri <AT> gentoo <DOT> org>
3 AuthorDate: Tue Sep 15 11:07:13 2020 +0000
4 Commit: Keri Harris <keri <AT> gentoo <DOT> org>
5 CommitDate: Tue Sep 15 11:07:41 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=86466ba3
7
8 dev-lang/mercury-extras: use mmc instead of mmake to build libraries
9
10 Package-Manager: Portage-3.0.4, Repoman-2.3.22
11 Signed-off-by: Keri Harris <keri <AT> gentoo.org>
12
13 .../mercury-extras/mercury-extras-20.06.ebuild | 86 +++++++++-------------
14 1 file changed, 36 insertions(+), 50 deletions(-)
15
16 diff --git a/dev-lang/mercury-extras/mercury-extras-20.06.ebuild b/dev-lang/mercury-extras/mercury-extras-20.06.ebuild
17 index 323a4b75ed0..cf0817367fe 100644
18 --- a/dev-lang/mercury-extras/mercury-extras-20.06.ebuild
19 +++ b/dev-lang/mercury-extras/mercury-extras-20.06.ebuild
20 @@ -67,11 +67,11 @@ mercury_pkgs() {
21 net/net:lib:
22 net/echo:bin:
23 $(use ssl && echo mopenssl/mopenssl:lib:openssl)
24 - $(use odbc && echo odbc/odbc:lib:)
25 + $(use odbc && echo odbc/odbc:lib:odbc)
26 $(use iodbc && echo odbc/odbc:lib:libiodbc)
27 posix/posix:lib:
28 $(has_version dev-lang/mercury[trail] && echo \
29 - references/global:lib: trailed_update/trailed_update:lib:)
30 + references/global:lib:)
31 show_ops/show_ops:bin:
32 solver_types/library/any:lib:
33 $(use xml && echo xml/xml:lib:)"
34 @@ -90,43 +90,33 @@ mercury_pkg_setup() {
35
36 echo ">> Preparing Mercury package: ${mercury_pkg}"
37
38 - if ! test -f "${S}"/${mercury_pkg_dir}/gentoo.params; then
39 - echo "LIBGRADES := \$(filter-out java,\$(LIBGRADES))" \
40 - > "${S}"/${mercury_pkg_dir}/gentoo.params
41 - echo "LIBGRADES := \$(filter-out erlang,\$(LIBGRADES))" \
42 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
43 - echo "LIBGRADES := \$(filter-out csharp,\$(LIBGRADES))" \
44 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
45 - echo "include gentoo.params" > "${S}"/${mercury_pkg_dir}/Mmakefile
46 - fi
47 + echo "MCFLAGS += --libgrades-exclude java" \
48 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
49 + echo "MCFLAGS += --libgrades-exclude erlang" \
50 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
51 + echo "MCFLAGS += --libgrades-exclude csharp" \
52 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
53
54 if test -n "$mercury_pkg_deps"; then
55 echo "EXTRA_CFLAGS += $(pkg-config --cflags ${mercury_pkg_deps/,/ })" \
56 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
57 - echo "EXTRA_MLLIBS += $(pkg-config --libs ${mercury_pkg_deps/,/ })" \
58 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
59 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
60 + echo "EXTRA_LDFLAGS += $(pkg-config --libs ${mercury_pkg_deps/,/ })" \
61 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
62 fi
63
64 if test ${mercury_pkg_name} = dl; then
65 - echo "EXTRA_MLLIBS = -ldl" >> "${S}"/${mercury_pkg_dir}/gentoo.params
66 + echo "EXTRA_LDFLAGS += -ldl" >> "${S}"/${mercury_pkg_dir}/Mercury.options
67 elif test ${mercury_pkg_name} = gmp_int; then
68 - echo "EXTRA_MLLIBS = -lgmp" >> "${S}"/${mercury_pkg_dir}/gentoo.params
69 + echo "EXTRA_LDFLAGS += -lgmp" >> "${S}"/${mercury_pkg_dir}/Mercury.options
70 elif test ${mercury_pkg_name} = mercury_tcltk; then
71 echo "EXTRA_CFLAGS += -DUSE_INTERP_RESULT" \
72 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
73 - elif test ${mercury_pkg_name} = mopenssl; then
74 - local net_libdir="${D}/usr/$(get_libdir)/mercury/extras/lib/\$(GRADE)"
75 - echo "EXTRA_MLLIBS += -L${net_libdir} -L../net -lnet" \
76 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
77 - echo "net%:" >> "${S}"/${mercury_pkg_dir}/gentoo.params
78 - echo " cp ../net/\$@ \$@" >> "${S}"/${mercury_pkg_dir}/gentoo.params
79 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
80 elif test ${mercury_pkg_name} = odbc && use odbc; then
81 - echo "EXTRA_CFLAGS = -DMODBC_UNIX -DMODBC_MYSQL" \
82 - >> "${S}"/${mercury_pkg_dir}/Mmakefile
83 - echo "EXTRA_MLLIBS = -lodbc" >> "${S}"/${mercury_pkg_dir}/gentoo.params
84 + echo "EXTRA_CFLAGS += -DMODBC_UNIX -DMODBC_MYSQL" \
85 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
86 elif test ${mercury_pkg_name} = odbc && use iodbc; then
87 echo "EXTRA_CFLAGS += -DMODBC_IODBC -DMODBC_MYSQL" \
88 - >> "${S}"/${mercury_pkg_dir}/gentoo.params
89 + >> "${S}"/${mercury_pkg_dir}/Mercury.options
90 fi
91 }
92
93 @@ -148,20 +138,16 @@ mercury_pkg_compile() {
94 mercury_mmc_target=lib${mercury_pkg_name}
95 fi
96
97 - # Mercury dependency generation must be run single-threaded
98 mmc -f *.m || die "mmc -f .m failed"
99 - mmake -j1 \
100 - ${mercury_pkg_name}.depend \
101 - || die "mmake ${mercury_pkg} depend failed"
102 -
103 - # Compiling Mercury submodules is not thread-safe
104 - mmake -j1 \
105 - MLFLAGS=--no-strip \
106 - CFLAGS="${CFLAGS}" \
107 - LDFLAGS="${LDFLAGS}" \
108 - LD_LIBFLAGS="${LDFLAGS}" \
109 - ${mercury_mmc_target} || die "mmake ${mercury_pkg} failed"
110
111 + mmc \
112 + --make \
113 + --verbose-commands \
114 + --no-strip \
115 + --cflags "${CFLAGS}" \
116 + --ld-flags "${LDFLAGS}" \
117 + --ld-libflags "${LDFLAGS}" \
118 + ${mercury_mmc_target} || die "mmc ${mercury_mmc_target} failed"
119 }
120
121 mercury_pkg_install() {
122 @@ -180,14 +166,15 @@ mercury_pkg_install() {
123 into /usr/$(get_libdir)/mercury/extras
124 dobin ${mercury_pkg_name}
125 else
126 - # Compiling Mercury submodules is not thread-safe
127 - mmake -j1 \
128 - MLFLAGS=--no-strip \
129 - CFLAGS="${CFLAGS}" \
130 - LDFLAGS="${LDFLAGS}" \
131 - LD_LIBFLAGS="${LDFLAGS}" \
132 - INSTALL_LIBDIR="${D}/usr/$(get_libdir)/mercury/extras" \
133 - lib${mercury_pkg_name}.install || die "mmake ${mercury_pkg} failed"
134 + mmc \
135 + --make \
136 + --verbose-commands \
137 + --no-strip \
138 + --cflags "${CFLAGS}" \
139 + --ld-flags "${LDFLAGS}" \
140 + --ld-libflags "${LDFLAGS}" \
141 + --install-prefix "${D}/usr/$(get_libdir)/mercury/extras" \
142 + lib${mercury_pkg_name}.install || die "mmc lib${mercury_pkg_name}.install failed"
143 fi
144 }
145
146 @@ -202,6 +189,8 @@ src_prepare() {
147 for mercury_pkg in $(mercury_pkgs); do
148 mercury_pkg_setup ${mercury_pkg}
149 done
150 +
151 + cp "${S}"/net/*.m "${S}"/mopenssl/ || die
152 }
153
154 src_compile() {
155 @@ -302,9 +291,6 @@ src_install() {
156
157 docinto samples/trail
158 dodoc trail/*.m
159 -
160 - docinto samples/trailed_update
161 - dodoc trailed_update/samples/*.m
162 fi
163
164 if use xml; then