On Sat, Apr 02 2022, Theo Buehler <[email protected]> wrote:
> Disable thin archives if we use GNU ar since ours is too old to support
> it.
ok jca@
> If there is a way to do that via CONFIGURE_FLAGS += -Dsomething
> conditionally on .if !${PROPERTIES:Mclang}
Rather ${PROPERTIES:Mlld}, which should match LLD_ARCH in bsd.own.mk.
> that would probably be
> preferable. Nothing I tried worked. Pointers welcome.
I can't see how it could be overriden, I'm no cmake expert but those are
not options (with default values), just variables set unconditionally.
> Not sure if anything but sparc64 among !clang archs is capable of
> building (let alone running) this monster.
Maybe powerpc can still build it, maybe not.
> Index: patches/patch-Source_cmake_OptionsCommon_cmake
> ===================================================================
> RCS file:
> /cvs/ports/www/webkitgtk4/patches/patch-Source_cmake_OptionsCommon_cmake,v
> retrieving revision 1.21
> diff -u -p -r1.21 patch-Source_cmake_OptionsCommon_cmake
> --- patches/patch-Source_cmake_OptionsCommon_cmake 26 Mar 2022 16:11:56
> -0000 1.21
> +++ patches/patch-Source_cmake_OptionsCommon_cmake 31 Mar 2022 18:56:22
> -0000
> @@ -1,16 +1,28 @@
> +Disable thin archives for BFD since our prehistoric ar doesn't support
> +it on !clang arches.
> +
> Put the internal library path first so that we can
> build with an older webkitgtk4 package installed.
>
> Index: Source/cmake/OptionsCommon.cmake
> --- Source/cmake/OptionsCommon.cmake.orig
> +++ Source/cmake/OptionsCommon.cmake
> -@@ -180,6 +180,9 @@ if (NOT PORT STREQUAL "GTK" AND NOT PORT STREQUAL "WPE
> +@@ -92,7 +92,7 @@ set(AR_SUPPORTS_THIN_ARCHIVES FALSE)
> + if (AR_STATUS EQUAL 0)
> + if (AR_VERSION MATCHES "^GNU ar ")
> + set(AR_VARIANT BFD)
> +- set(AR_SUPPORTS_THIN_ARCHIVES TRUE)
> ++ set(AR_SUPPORTS_THIN_ARCHIVES FALSE)
> + elseif (AR_VERSION MATCHES "^LLVM ")
> + set(AR_VARIANT LLVM)
> + set(AR_SUPPORTS_THIN_ARCHIVES TRUE)
> +@@ -179,6 +179,9 @@ if (NOT PORT STREQUAL "GTK" AND NOT PORT STREQUAL "WPE
> + set(EXEC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Absolute
> path to executable installation directory")
> set(LIBEXEC_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH
> "Absolute path to install executables executed by the library")
> endif ()
> -
> ++
> +# make sure that the internal library dir is the first in the path
> +link_directories("${CMAKE_BINARY_DIR}/lib")
> -+
> +
> # Check whether features.h header exists.
> # Including glibc's one defines __GLIBC__, that is used in Platform.h
> - WEBKIT_CHECK_HAVE_INCLUDE(HAVE_FEATURES_H features.h)
>
--
jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE