[MacPorts] #52503: hexchat 2.12.1 has issues on tiger - and fix
#52503: hexchat 2.12.1 has issues on tiger - and fix -------------------------------------+-------------------------------- Reporter: ken.cunningham.webuse@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Keywords: | Port: -------------------------------------+-------------------------------- Tiger is not on the radar right after Sierra comes out, but at any rate, the new hexchat has a couple of easily-fixable issues to restore compatibility with Tiger. During configure, autoconf identifies the system as accepting -fPIE, but in fact, 10.4 does not: {{{ configure:19136: checking whether C compiler accepts -fPIE configure:19155: /opt/local/bin/gcc-apple-4.2 -c -pipe -Os -arch i386 -funsigned-char -fPIE -I/opt/local/include conftest.c >&5 configure:19155: $? = 0 configure:19164: result: yes libtool: link: /opt/local/bin/gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused- parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -L/opt/local/lib /opt/local/lib/libintl.dylib ld: -pie can only be used when targeting Mac OS X 10.5 or later }}} the only solution I can come up with is to pull it out of the Makefiles manually with a reinplace. Secondly, backend.m still has issues on Tiger even after ionic's nice fix for 10.5-10.8 is applied. I tried this and that to fix these issues, but even when it would compile cleanly, it wouldn't link: {{{ AutoLoad failed for: /opt/local/lib/hexchat/plugins/sysinfo.so dlopen(/opt/local/lib/hexchat/plugins/sysinfo.so, 10): Symbol not found: _objc_enumerationMutation Referenced from: /opt/local/lib/hexchat/plugins/sysinfo.so Expected in: dynamic lookup }}} So I disabled it in config. Finally, I added a note about how to download it, until such time as another solution is found to the 'old SSL' library issue on systems < 10.6. This one is just in the notes -- I didn't wrap it up in a <10.6 block or get fancy with it. -- Ticket URL: <https://trac.macports.org/ticket/52503> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+-------------------------------- Reporter: ken.cunningham.webuse@… | Owner: macports-tickets@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: Port: | --------------------------------------+-------------------------------- Comment (by ken.cunningham.webuse@…): Ah - forgot to add the Port= hexchat and maintainer=raimue@macports.org fields before I clicked. I'm sorry, and can't fix it now. -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:1> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+---------------------- Reporter: ken.cunningham.webuse@… | Owner: raimue@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: tiger Port: hexchat | --------------------------------------+---------------------- Changes (by larryv@…): * owner: macports-tickets@… => raimue@… * keywords: => tiger * port: => hexchat Old description:
Tiger is not on the radar right after Sierra comes out, but at any rate, the new hexchat has a couple of easily-fixable issues to restore compatibility with Tiger.
During configure, autoconf identifies the system as accepting -fPIE, but in fact, 10.4 does not: {{{
configure:19136: checking whether C compiler accepts -fPIE configure:19155: /opt/local/bin/gcc-apple-4.2 -c -pipe -Os -arch i386 -funsigned-char -fPIE -I/opt/local/include conftest.c >&5 configure:19155: $? = 0 configure:19164: result: yes
libtool: link: /opt/local/bin/gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno- unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -L/opt/local/lib /opt/local/lib/libintl.dylib ld: -pie can only be used when targeting Mac OS X 10.5 or later }}}
the only solution I can come up with is to pull it out of the Makefiles manually with a reinplace.
Secondly, backend.m still has issues on Tiger even after ionic's nice fix for 10.5-10.8 is applied. I tried this and that to fix these issues, but even when it would compile cleanly, it wouldn't link:
{{{
AutoLoad failed for: /opt/local/lib/hexchat/plugins/sysinfo.so dlopen(/opt/local/lib/hexchat/plugins/sysinfo.so, 10): Symbol not found: _objc_enumerationMutation Referenced from: /opt/local/lib/hexchat/plugins/sysinfo.so Expected in: dynamic lookup }}}
So I disabled it in config.
Finally, I added a note about how to download it, until such time as another solution is found to the 'old SSL' library issue on systems < 10.6. This one is just in the notes -- I didn't wrap it up in a <10.6 block or get fancy with it.
New description: Tiger is not on the radar right after Sierra comes out, but at any rate, the new hexchat has a couple of easily-fixable issues to restore compatibility with Tiger. During configure, autoconf identifies the system as accepting -fPIE, but in fact, 10.4 does not: {{{ configure:19136: checking whether C compiler accepts -fPIE configure:19155: /opt/local/bin/gcc-apple-4.2 -c -pipe -Os -arch i386 -funsigned-char -fPIE -I/opt/local/include conftest.c >&5 configure:19155: $? = 0 configure:19164: result: yes libtool: link: /opt/local/bin/gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused- parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -L/opt/local/lib /opt/local/lib/libintl.dylib ld: -pie can only be used when targeting Mac OS X 10.5 or later }}} the only solution I can come up with is to pull it out of the Makefiles manually with a reinplace. Secondly, backend.m still has issues on Tiger even after ionic's nice fix for 10.5-10.8 is applied. I tried this and that to fix these issues, but even when it would compile cleanly, it wouldn't link: {{{ AutoLoad failed for: /opt/local/lib/hexchat/plugins/sysinfo.so dlopen(/opt/local/lib/hexchat/plugins/sysinfo.so, 10): Symbol not found: _objc_enumerationMutation Referenced from: /opt/local/lib/hexchat/plugins/sysinfo.so Expected in: dynamic lookup }}} So I disabled it in config. Finally, I added a note about how to download it, until such time as another solution is found to the 'old SSL' library issue on systems ≤ 10.6. This one is just in the notes -- I didn't wrap it up in a <10.6 block or get fancy with it. -- Comment: Replying to [ticket:52503 ken.cunningham.webuse@…]:
During configure, autoconf identifies the system as accepting -fPIE, but in fact, 10.4 does not: {{{ configure:19136: checking whether C compiler accepts -fPIE configure:19155: /opt/local/bin/gcc-apple-4.2 -c -pipe -Os -arch i386 -funsigned-char -fPIE -I/opt/local/include conftest.c >&5 configure:19155: $? = 0 configure:19164: result: yes
libtool: link: /opt/local/bin/gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused- parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -L/opt/local/lib /opt/local/lib/libintl.dylib ld: -pie can only be used when targeting Mac OS X 10.5 or later }}}
the only solution I can come up with is to pull it out of the Makefiles manually with a reinplace.
Well, it’s checking whether the compiler accepts -fPIE, which it does. The problem is the linker. I think a better fix would be to have the configure script check the linker as well. -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:2> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+---------------------- Reporter: ken.cunningham.webuse@… | Owner: raimue@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: tiger Port: hexchat | --------------------------------------+---------------------- Comment (by ken.cunningham.webuse@…): found some more -- linker does test for PIE, I see, and finds failure {{{ configure:19216: checking whether the linker accepts -pie configure:19235: /opt/local/bin/gcc-apple-4.2 -o conftest -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno- unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -I/opt/local/include -L/opt/local/lib -Wl,-headerpad_max_install_names -arch i386 -pie conftest.c >&5 conftest.c:44: warning: function declaration isn't a prototype ld: -pie can only be used when targeting Mac OS X 10.5 or later collect2: ld returned 1 exit status }}} and that makes it into the summary {{{ ax_cv_check_ldflags___Wl__z_now=no ax_cv_check_ldflags___Wl__z_relro=no ax_cv_check_ldflags___pie=no }}} so the compiler accepts -fPIE, but the linker does not {{{ CFLAGS='-pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused-parameter -Wno-sign-compare -Wno-pointer- sign -Wno-missing-field-initializers -Werror=format-security -Werror=init- self -Werror=declaration-after-statement -Werror=missing-include-dirs -Werror=implicit-function-declaration -Werror=pointer-arith' LDFLAGS='-L/opt/local/lib -Wl,-headerpad_max_install_names -arch i386' }}} and in the end, the link line looks like it's made up of both CFLAGS (with-fPIE) and LDFLAGS, and errors out... {{{ :info:build /bin/sh ../../libtool --tag=CC --mode=link /opt/local/bin /gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno-unused-parameter -Wno-sign-compare -Wno- pointer-sign -Wno-missing-field-initializers -Werror=format-security -Werror=init-self -Werror=declaration-after-statement -Werror=missing- include-dirs -Werror=implicit-function-declaration -Werror=pointer-arith -L/opt/local/lib -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -lintl :info:build libtool: link: /opt/local/bin/gcc-apple-4.2 -pipe -Os -arch i386 -funsigned-char -fPIE -fPIC -Wall -Wextra -Wstrict-prototypes -Wno- unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field- initializers -Werror=format-security -Werror=init-self -Werror =declaration-after-statement -Werror=missing-include-dirs -Werror =implicit-function-declaration -Werror=pointer-arith -Wl,-headerpad_max_install_names -arch i386 -o make-te make-te.o -L/opt/local/lib /opt/local/lib/libintl.dylib :info:build ld: -pie can only be used when targeting Mac OS X 10.5 or later :info:build collect2: ld returned 1 exit status }}} -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:3> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+---------------------- Reporter: ken.cunningham.webuse@… | Owner: raimue@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: tiger Port: hexchat | --------------------------------------+---------------------- Comment (by ken.cunningham.webuse@…): the issue might be in this command from src/common/Makefile.in {{{ LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(AM_LDFLAGS) $(LDFLAGS) -o $@ }}} that include the CFLAGS and AM_CFLAGS in with the link command... it ultimately is rather easier to strip out the -fPIE than repair this, though... -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:4> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+---------------------- Reporter: ken.cunningham.webuse@… | Owner: raimue@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: | Keywords: tiger Port: hexchat | --------------------------------------+---------------------- Comment (by ken.cunningham.webuse@…): At any rate, I don't see that I'm going to improve this patch any further than this --it works great, and it's not worth more effort. So this patch can suffice for those on Tiger who go looking for it to work, and we can close this ticket off as a 'won't fix'. -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:5> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
#52503: hexchat 2.12.1 has issues on tiger - and fix --------------------------------------+---------------------- Reporter: ken.cunningham.webuse@… | Owner: raimue@… Type: defect | Status: closed Priority: Normal | Milestone: Component: ports | Version: 2.3.4 Resolution: wontfix | Keywords: tiger Port: hexchat | --------------------------------------+---------------------- Changes (by raimue@…): * status: new => closed * resolution: => wontfix -- Ticket URL: <https://trac.macports.org/ticket/52503#comment:6> MacPorts <https://www.macports.org/> Ports system for the Mac operating system
participants (1)
-
MacPorts