1 |
commit: affe702e32d1e6d460cf3b28322d9c070357b7f9 |
2 |
Author: Sam James <sam <AT> gentoo <DOT> org> |
3 |
AuthorDate: Tue Feb 8 00:05:04 2022 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Tue Feb 8 00:05:04 2022 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=affe702e |
7 |
|
8 |
x11-misc/lineakd: fix libdl linkage, other modernisation |
9 |
|
10 |
- Port to EAPI 8 |
11 |
- Try to fixup build system (avoid Bashism, fix libdl linkage, ensure |
12 |
correct library/LDFLAGS ordering) |
13 |
|
14 |
Closes: https://bugs.gentoo.org/722372 |
15 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
16 |
|
17 |
.../lineakd-0.9.0-automake-linking-libdl.patch | 58 ++++++++++++++++++++++ |
18 |
...akd-0.9.0-r3.ebuild => lineakd-0.9.0-r2.ebuild} | 38 +++++++------- |
19 |
x11-misc/lineakd/lineakd-0.9.0-r3.ebuild | 40 ++++++++------- |
20 |
3 files changed, 101 insertions(+), 35 deletions(-) |
21 |
|
22 |
diff --git a/x11-misc/lineakd/files/lineakd-0.9.0-automake-linking-libdl.patch b/x11-misc/lineakd/files/lineakd-0.9.0-automake-linking-libdl.patch |
23 |
new file mode 100644 |
24 |
index 000000000000..a3587e42426f |
25 |
--- /dev/null |
26 |
+++ b/x11-misc/lineakd/files/lineakd-0.9.0-automake-linking-libdl.patch |
27 |
@@ -0,0 +1,58 @@ |
28 |
+* configure.in change from Debian to fix autoreconf: https://sources.debian.org/src/lineakd/1%253A0.9-6/debian/patches/005_configure_in.diff/#L19 |
29 |
+* Rest is to fix libdl linkage (and general LDFLAGS issues): https://bugs.gentoo.org/722372 |
30 |
+--- a/configure.in |
31 |
++++ b/configure.in |
32 |
+@@ -28,10 +28,12 @@ |
33 |
+ |
34 |
+ dnl Process this file with autoconf to produce a configure script. |
35 |
+ |
36 |
+-AC_INIT(acinclude.m4) dnl a source file from your sub dir |
37 |
+- |
38 |
++AC_INIT |
39 |
+ dnl This is so we can use kde-common |
40 |
+ AC_CONFIG_AUX_DIR(admin) |
41 |
++AC_CONFIG_MACRO_DIR([m4]) |
42 |
++ |
43 |
++LT_INIT |
44 |
+ |
45 |
+ dnl This ksh/zsh feature conflicts with `cd blah ; pwd` |
46 |
+ unset CDPATH |
47 |
+ |
48 |
+--- a/configure.in |
49 |
++++ b/configure.in |
50 |
+@@ -81,7 +81,7 @@ KDE_PROG_LIBTOOL |
51 |
+ |
52 |
+ dnl activate the next macro call for DLOPEN tests and setting LIBDL |
53 |
+ dnl (n.b. KDE_MISC_TESTS does the same to you, so use either this or the next one) |
54 |
+-dnl KDE_CHECK_DLOPEN |
55 |
++KDE_CHECK_DLOPEN |
56 |
+ |
57 |
+ dnl activate the next macro call for some additional tests |
58 |
+ dnl (compat, crypt, socket, nsl, dlopen, ...) |
59 |
+ |
60 |
+--- a/lineak/Makefile.am |
61 |
++++ b/lineak/Makefile.am |
62 |
+@@ -19,8 +19,8 @@ liblineak_la_SOURCES = pluginmanager.cpp globals.cpp displayctrl.cpp xmgr.cpp cd |
63 |
+ # liblineak_la_LDFLAGS = -version-info 8:0:8 $(all_libraries); \ |
64 |
+ #fi; |
65 |
+ |
66 |
+-liblineak_la_LIBADD = -lX11 -lXext $(X_LIBS) -lXt -lSM -lICE -L/usr/X11R6/lib |
67 |
+-liblineak_la_LDFLAGS = -version-info 8:0:8 $(all_libraries) -L/usr/X11R6/lib @X_LIBS@ @X_PRE_LIBS@ -lpthread |
68 |
++liblineak_la_LIBADD = -lX11 -lXext $(X_LIBS) -lXt -lSM -lICE -L/usr/X11R6/lib $(all_libraries) @X_LIBS@ @X_PRE_LIBS@ $(PTHREAD_LIBS) @LIBDL@ |
69 |
++liblineak_la_LDFLAGS = -version-info 8:0:8 |
70 |
+ |
71 |
+ lineak_HEADERS = configdirectives.h configloader.h definitions.h defloader.h lconfig.h lconfigdata.h ldef.h lobject.h lkbd.h lkey.h lbutton.h loader.h msgpasser.h saver.h lcommand.h lockctrl.h lineak_util_functions.h lineak_core_functions.h cdromctrl.h xmgr.h displayctrl.h plugin_definitions.h commandexec.h pluginmanager.h |
72 |
+ |
73 |
+--- a/lineakd/Makefile.am |
74 |
++++ b/lineakd/Makefile.am |
75 |
+@@ -1,8 +1,8 @@ |
76 |
+ bin_PROGRAMS = lineakd |
77 |
+ |
78 |
+ lineakd_SOURCES = lineakd_core_functions.cpp cmdprefs.cpp main.cpp |
79 |
+-lineakd_LDADD = -lpthread -llineak -lXext -lX11 -ldl |
80 |
+-lineakd_LDFLAGS = -rdynamic -L../lineak $(all_libraries) @X_LIBS@ @X_PRE_LIBS@ |
81 |
++lineakd_LDADD = -llineak -lXext -lX11 $(PTHREAD_LIBS) @LIBDL@ $(all_libraries) @X_LIBS@ @X_PRE_LIBS@ |
82 |
++lineakd_LDFLAGS = -rdynamic -L../lineak |
83 |
+ |
84 |
+ EXTRA_DIST = main.cpp eakprocs.h cmdprefs.cpp cmdprefs.h lineakkb.def lineakd.1.bz2 OLDCODE lineakd_core_functions.h lineakd_core_functions.cpp |
85 |
+ |
86 |
|
87 |
diff --git a/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild b/x11-misc/lineakd/lineakd-0.9.0-r2.ebuild |
88 |
similarity index 67% |
89 |
copy from x11-misc/lineakd/lineakd-0.9.0-r3.ebuild |
90 |
copy to x11-misc/lineakd/lineakd-0.9.0-r2.ebuild |
91 |
index 00a75e407fb0..82ba727c0440 100644 |
92 |
--- a/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild |
93 |
+++ b/x11-misc/lineakd/lineakd-0.9.0-r2.ebuild |
94 |
@@ -1,49 +1,53 @@ |
95 |
-# Copyright 1999-2021 Gentoo Authors |
96 |
+# Copyright 1999-2022 Gentoo Authors |
97 |
# Distributed under the terms of the GNU General Public License v2 |
98 |
|
99 |
-EAPI=7 |
100 |
-inherit multilib |
101 |
+EAPI=8 |
102 |
|
103 |
-MY_P=${P/.0/} |
104 |
+inherit autotools |
105 |
|
106 |
+MY_P=${P/.0/} |
107 |
DESCRIPTION="Linux support for Easy Access and Internet Keyboards" |
108 |
HOMEPAGE="http://lineak.sourceforge.net" |
109 |
SRC_URI="mirror://sourceforge/lineak/${MY_P}.tar.gz" |
110 |
+S="${WORKDIR}"/${MY_P} |
111 |
|
112 |
LICENSE="GPL-2" |
113 |
SLOT="0" |
114 |
KEYWORDS="amd64 ppc sparc x86" |
115 |
IUSE="debug" |
116 |
|
117 |
-RDEPEND=" |
118 |
- x11-libs/libICE |
119 |
+RDEPEND="x11-libs/libICE |
120 |
x11-libs/libSM |
121 |
x11-libs/libX11 |
122 |
- x11-libs/libXext |
123 |
-" |
124 |
-DEPEND=" |
125 |
- ${RDEPEND} |
126 |
+ x11-libs/libXext" |
127 |
+DEPEND="${RDEPEND} |
128 |
x11-base/xorg-proto |
129 |
x11-libs/libxkbfile |
130 |
x11-libs/libXt |
131 |
- x11-libs/libXtst |
132 |
-" |
133 |
+ x11-libs/libXtst" |
134 |
|
135 |
-S=${WORKDIR}/${MY_P} |
136 |
PATCHES=( |
137 |
"${FILESDIR}"/${P}-gcc43.patch |
138 |
"${FILESDIR}"/${P}-DELL-XPS-M1330-XOrg-1_5.patch |
139 |
+ "${FILESDIR}"/${P}-automake-linking-libdl.patch |
140 |
) |
141 |
|
142 |
+src_prepare() { |
143 |
+ default |
144 |
+ |
145 |
+ eautoreconf |
146 |
+} |
147 |
+ |
148 |
src_configure() { |
149 |
- econf \ |
150 |
+ # admin/lineakd.m4.in contains Bashisms but fixes it causes a confusing |
151 |
+ # autotools avalanche, so workaround it with CONFIG_SHELL as bash. |
152 |
+ CONFIG_SHELL="${BROOT}/bin/bash" econf \ |
153 |
$(use_enable debug) \ |
154 |
- --with-x \ |
155 |
- --disable-static |
156 |
+ --with-x |
157 |
} |
158 |
|
159 |
src_install() { |
160 |
- sed -i -e 's:$(DESTDIR)${DESTDIR}:$(DESTDIR):' lineakd/Makefile |
161 |
+ sed -i -e 's:$(DESTDIR)${DESTDIR}:$(DESTDIR):' lineakd/Makefile || die |
162 |
|
163 |
dodir /usr/share/man/man8 |
164 |
|
165 |
|
166 |
diff --git a/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild b/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild |
167 |
index 00a75e407fb0..8f2fca9f6c7c 100644 |
168 |
--- a/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild |
169 |
+++ b/x11-misc/lineakd/lineakd-0.9.0-r3.ebuild |
170 |
@@ -1,49 +1,53 @@ |
171 |
-# Copyright 1999-2021 Gentoo Authors |
172 |
+# Copyright 1999-2022 Gentoo Authors |
173 |
# Distributed under the terms of the GNU General Public License v2 |
174 |
|
175 |
-EAPI=7 |
176 |
-inherit multilib |
177 |
+EAPI=8 |
178 |
|
179 |
-MY_P=${P/.0/} |
180 |
+inherit autotools |
181 |
|
182 |
+MY_P=${P/.0/} |
183 |
DESCRIPTION="Linux support for Easy Access and Internet Keyboards" |
184 |
HOMEPAGE="http://lineak.sourceforge.net" |
185 |
SRC_URI="mirror://sourceforge/lineak/${MY_P}.tar.gz" |
186 |
+S="${WORKDIR}"/${MY_P} |
187 |
|
188 |
LICENSE="GPL-2" |
189 |
SLOT="0" |
190 |
-KEYWORDS="amd64 ppc sparc x86" |
191 |
+KEYWORDS="~amd64 ~ppc ~sparc ~x86" |
192 |
IUSE="debug" |
193 |
|
194 |
-RDEPEND=" |
195 |
- x11-libs/libICE |
196 |
+RDEPEND="x11-libs/libICE |
197 |
x11-libs/libSM |
198 |
x11-libs/libX11 |
199 |
- x11-libs/libXext |
200 |
-" |
201 |
-DEPEND=" |
202 |
- ${RDEPEND} |
203 |
+ x11-libs/libXext" |
204 |
+DEPEND="${RDEPEND} |
205 |
x11-base/xorg-proto |
206 |
x11-libs/libxkbfile |
207 |
x11-libs/libXt |
208 |
- x11-libs/libXtst |
209 |
-" |
210 |
+ x11-libs/libXtst" |
211 |
|
212 |
-S=${WORKDIR}/${MY_P} |
213 |
PATCHES=( |
214 |
"${FILESDIR}"/${P}-gcc43.patch |
215 |
"${FILESDIR}"/${P}-DELL-XPS-M1330-XOrg-1_5.patch |
216 |
+ "${FILESDIR}"/${P}-automake-linking-libdl.patch |
217 |
) |
218 |
|
219 |
+src_prepare() { |
220 |
+ default |
221 |
+ |
222 |
+ eautoreconf |
223 |
+} |
224 |
+ |
225 |
src_configure() { |
226 |
- econf \ |
227 |
+ # admin/lineakd.m4.in contains Bashisms but fixes it causes a confusing |
228 |
+ # autotools avalanche, so workaround it with CONFIG_SHELL as bash. |
229 |
+ CONFIG_SHELL="${BROOT}/bin/bash" econf \ |
230 |
$(use_enable debug) \ |
231 |
- --with-x \ |
232 |
- --disable-static |
233 |
+ --with-x |
234 |
} |
235 |
|
236 |
src_install() { |
237 |
- sed -i -e 's:$(DESTDIR)${DESTDIR}:$(DESTDIR):' lineakd/Makefile |
238 |
+ sed -i -e 's:$(DESTDIR)${DESTDIR}:$(DESTDIR):' lineakd/Makefile || die |
239 |
|
240 |
dodir /usr/share/man/man8 |