Patch CMakeLists to avoid using -pie in the build; it's now pushed back

to the linker on LLVM arches (tools/clang/lib/Driver/Tools.cpp r1.13),
and the combination of -pie -shared there was resulting in libwsutil.so
being mis-linked causing build to fail later.

Drop useless USE_GMAKE while there.
This commit is contained in:
sthen 2017-08-22 22:39:38 +00:00
parent 9e5d4748f6
commit 1e38e9f82d
2 changed files with 28 additions and 8 deletions

View File

@ -1,6 +1,4 @@
# $OpenBSD: Makefile,v 1.54 2017/07/27 09:55:45 sthen Exp $
# XXX should add pledge to dumpcap.
# $OpenBSD: Makefile,v 1.55 2017/08/22 22:39:38 sthen Exp $
BROKEN-alpha = .got subsegment exceeds 64K (size 101480)
BROKEN-sparc64 = cc: Internal error: Illegal instruction (program cc1)
@ -15,9 +13,7 @@ DISTNAME = wireshark-${WVER}
PKGNAME-main = wireshark-${WVER}
PKGNAME-gtk = wireshark-gtk-${WVER}
PKGNAME-text = tshark-${WVER}
REVISION-gtk = 0
REVISION-main = 0
REVISION-text = 0
REVISION = 1
SHARED_LIBS += wscodecs 0.0 # 0.0
SHARED_LIBS += wsutil 3.0 # 5.0
@ -30,8 +26,6 @@ HOMEPAGE = http://www.wireshark.org/
EXTRACT_SUFX = .tar.bz2
USE_GMAKE = Yes
# Mostly GPLv2 or later. Some files are less restrictive.
# tools/pidl is GPLv3 or later. See COPYING.
PERMIT_PACKAGE_CDROM = Yes

View File

@ -0,0 +1,26 @@
$OpenBSD: patch-CMakeLists_txt,v 1.1 2017/08/22 22:39:38 sthen Exp $
Avoid the broken libwsutil.so that gets generated with -pie -shared
(probably following tools/clang/lib/Driver/Tools.cpp r1.13 "push back
-pie to the linker if -pie is specified").
Index: CMakeLists.txt
--- CMakeLists.txt.orig
+++ CMakeLists.txt
@@ -612,11 +612,11 @@ set(WIRESHARK_LD_FLAGS
# XXX - are there other compilers that don't support -pie? It's
# not as if the only platforms we support are Windows and Linux....
#
-if(NOT CMAKE_VERSION VERSION_LESS "2.8.9")
- set(WIRESHARK_LD_FLAGS ${WIRESHARK_LD_FLAGS}
- -pie
- )
-endif()
+#if(NOT CMAKE_VERSION VERSION_LESS "2.8.9")
+# set(WIRESHARK_LD_FLAGS ${WIRESHARK_LD_FLAGS}
+# -pie
+# )
+#endif()
include(CheckCLinkerFlag)
set(_C 0)