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 |