changeset 945:6c1ecb499f76

kde/extra-cmake-modules: initial import, closes #1784
author David Demelier <markand@malikania.fr>
date Wed, 21 Aug 2019 20:10:00 +0200
parents 6c6b6c4aab68
children 40f70de0a15f
files kde/extra-cmake-modules/extra-cmake-modules.sh kde/extra-cmake-modules/extra-cmake-modules.sha1 kde/extra-cmake-modules/patch-fhs.patch
diffstat 3 files changed, 135 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/kde/extra-cmake-modules/extra-cmake-modules.sh	Wed Aug 21 20:10:00 2019 +0200
@@ -0,0 +1,53 @@
+#!/bin/sh
+#
+# Copyright (c) 2019 David Demelier <markand@malikania.fr>
+#
+# Permission to use, copy, modify, and/or distribute this software for any
+# purpose with or without fee is hereby granted, provided that the above
+# copyright notice and this permission notice appear in all copies.
+#
+# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+# ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+#
+
+PKGNAME=extra-cmake-modules
+PKGVERSION=5.61.0
+PKGREVISION=1
+PKGLICENSE="BSD3CLAUSE"
+PKGSUMMARY="KDE CMake modules"
+PKGDOWNLOAD="https://download.kde.org/stable/frameworks/${PKGVERSION%.*}/$PKGNAME-$PKGVERSION.tar.xz"
+PKGDEPENDS="cmake:build"
+
+: ${CC:=clang}
+: ${CFLAGS:=-O2}
+: ${CXX:=clang++}
+: ${CXXFLAGS:=-O2}
+
+build()
+{
+	rm -rf $PKGNAME-$PKGVERSION
+	tar xvf $PKGNAME-$PKGVERSION.tar.xz
+	cd $PKGNAME-$PKGVERSION
+
+	patch -p0 < ../patch-fhs.patch
+	mkdir build && cd build
+	cmake .. \
+		-DBUILD_SHARED_LIBS=On \
+		-DCMAKE_BUILD_TYPE=Release \
+		-DCMAKE_CXX_COMPILER="$CXX" \
+		-DCMAKE_CXX_FLAGS="$CXXFLAGS" \
+		-DCMAKE_C_COMPILER="$CC" \
+		-DCMAKE_C_FLAGS="$CFLAGS" \
+		-DCMAKE_INSTALL_PREFIX=
+	make
+	make install DESTDIR=$DESTDIR
+	cd ..
+
+	cd ..
+	rm -rf $PKGNAME-$PKGVERSION
+}
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/kde/extra-cmake-modules/extra-cmake-modules.sha1	Wed Aug 21 20:10:00 2019 +0200
@@ -0,0 +1,1 @@
+75ec03fdb9c3a94fd4f2c0aff7e3adf87f340e7e  extra-cmake-modules-5.61.0.tar.xz
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/kde/extra-cmake-modules/patch-fhs.patch	Wed Aug 21 20:10:00 2019 +0200
@@ -0,0 +1,81 @@
+--- CMakeLists.txt.orig	2019-08-21 13:19:09.535218387 +0200
++++ CMakeLists.txt	2019-08-21 13:19:59.415219919 +0200
+@@ -69,12 +69,12 @@
+     "read-only architecture-independent data"
+ )
+ 
+-set(CMAKECONFIG_INSTALL_DIR       ${SHARE_INSTALL_DIR}/ECM/cmake/)
++set(CMAKECONFIG_INSTALL_DIR       lib/cmake/ECM)
+ 
+-set(FIND_MODULES_INSTALL_DIR      ${SHARE_INSTALL_DIR}/ECM/find-modules/)
+-set(KDE_MODULES_INSTALL_DIR       ${SHARE_INSTALL_DIR}/ECM/kde-modules/)
+-set(MODULES_INSTALL_DIR           ${SHARE_INSTALL_DIR}/ECM/modules/)
+-set(TOOLCHAIN_MODULES_INSTALL_DIR ${SHARE_INSTALL_DIR}/ECM/toolchain/)
++set(FIND_MODULES_INSTALL_DIR      lib/cmake/ECM/find-modules)
++set(KDE_MODULES_INSTALL_DIR       lib/cmake/ECM/kde-modules)
++set(MODULES_INSTALL_DIR           lib/cmake/ECM/modules)
++set(TOOLCHAIN_MODULES_INSTALL_DIR lib/cmake/ECM/toolchain)
+ 
+ set(DOC_INSTALL_DIR ${SHARE_INSTALL_DIR}/doc/ECM
+     CACHE
+@@ -115,7 +115,7 @@
+ install(FILES ${installModuleFiles} DESTINATION ${MODULES_INSTALL_DIR})
+ 
+ file(GLOB installTestModuleFiles ${CMAKE_SOURCE_DIR}/test-modules/*[^~])
+-install(FILES ${installTestModuleFiles} DESTINATION ${SHARE_INSTALL_DIR}/ECM/test-modules)
++install(FILES ${installTestModuleFiles} DESTINATION lib/cmake/ECM/test-modules)
+ 
+ file(GLOB installKdeModuleFiles ${CMAKE_SOURCE_DIR}/kde-modules/*[^~])
+ install(FILES ${installKdeModuleFiles} DESTINATION ${KDE_MODULES_INSTALL_DIR})
+--- kde-modules/KDEInstallDirs.cmake.orig	2019-08-21 13:18:00.915216279 +0200
++++ kde-modules/KDEInstallDirs.cmake	2019-08-21 13:18:30.859217199 +0200
+@@ -229,40 +229,6 @@
+ # (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+ # THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ 
+-# Figure out what the default install directory for libraries should be.
+-# This is based on the logic in GNUInstallDirs, but simplified (the
+-# GNUInstallDirs code deals with re-configuring, but that is dealt with
+-# by the _define_* macros in this module).
+-set(_LIBDIR_DEFAULT "lib")
+-# Override this default 'lib' with 'lib64' iff:
+-#  - we are on a Linux, kFreeBSD or Hurd system but NOT cross-compiling
+-#  - we are NOT on debian
+-#  - we are NOT on flatpak
+-#  - we are on a 64 bits system
+-# reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf
+-# For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if
+-# CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu"
+-# See https://wiki.debian.org/Multiarch
+-if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU")
+-   AND NOT CMAKE_CROSSCOMPILING
+-   AND NOT DEFINED ENV{FLATPAK_ID})
+-  if (EXISTS "/etc/debian_version") # is this a debian system ?
+-    if(CMAKE_LIBRARY_ARCHITECTURE)
+-      set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
+-    endif()
+-  else() # not debian, rely on CMAKE_SIZEOF_VOID_P:
+-    if(NOT DEFINED CMAKE_SIZEOF_VOID_P)
+-      message(AUTHOR_WARNING
+-        "Unable to determine default LIB_INSTALL_LIBDIR directory because no target architecture is known. "
+-        "Please enable at least one language before including KDEInstallDirs.")
+-    else()
+-      if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
+-        set(_LIBDIR_DEFAULT "lib64")
+-      endif()
+-    endif()
+-  endif()
+-endif()
+-
+ set(_gnu_install_dirs_vars
+     BINDIR
+     SBINDIR
+@@ -441,7 +407,7 @@
+ _define_relative(SBINDIR EXECROOTDIR "sbin"
+     "system admin executables"
+     SBIN_INSTALL_DIR)
+-_define_relative(LIBDIR EXECROOTDIR "${_LIBDIR_DEFAULT}"
++_define_relative(LIBDIR EXECROOTDIR "lib"
+     "object code libraries"
+     LIB_INSTALL_DIR)
+