[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [digikam-software-compilation] project/bundles/mxe: polish
From:       Gilles Caulier <caulier.gilles () gmail ! com>
Date:       2016-12-01 12:04:10
Message-ID: E1cCQ5y-0003yz-3k () code ! kde ! org
[Download RAW message or body]

Git commit ef1f2ff6aa625c37e244d4302f656e4496f3d4c1 by Gilles Caulier.
Committed on 01/12/2016 at 11:55.
Pushed by cgilles into branch 'master'.

polish

M  +0    -1    project/bundles/mxe/01-build-mxe.sh
M  +57   -46   project/bundles/mxe/02-build-extralibs.sh
A  +128  -0    project/bundles/mxe/02-new.sh
M  +1    -1    project/bundles/mxe/config.sh

https://commits.kde.org/digikam-software-compilation/ef1f2ff6aa625c37e244d4302f656e4496f3d4c1


diff --git a/project/bundles/mxe/01-build-mxe.sh \
b/project/bundles/mxe/01-build-mxe.sh index 8aa2e8a..1406cfe 100755
--- a/project/bundles/mxe/01-build-mxe.sh
+++ b/project/bundles/mxe/01-build-mxe.sh
@@ -132,7 +132,6 @@ if [ ! -d $DOWNLOAD_DIR ] ; then
 fi
 
 cd $BUILDING_DIR
-
 rm -rf $BUILDING_DIR/* || true
 
 ${MXE_BUILD_TARGETS}-cmake $ORIG_WD/../3rdparty \
diff --git a/project/bundles/mxe/02-build-extralibs.sh \
b/project/bundles/mxe/02-build-extralibs.sh index 09d2b6e..689588d 100755
--- a/project/bundles/mxe/02-build-extralibs.sh
+++ b/project/bundles/mxe/02-build-extralibs.sh
@@ -37,60 +37,71 @@ ORIG_PATH="$PATH"
 ORIG_WD="`pwd`"
 
 export PATH=$MXE_BUILDROOT/usr/bin:$MXE_INSTALL_PREFIX/qt5/bin:$PATH
-cd $MXE_BUILDROOT
 
 #################################################################################################
                
-# Build KF5 frameworks in a temporary directory and installation
-# See KF5DEPENDENCIES details about the big puzzle
-
-InstallKDEExtraLib "extra-cmake-modules" ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kconfig"             ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "breeze-icons"        ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kcoreaddons"         ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kwindowsystem"       ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "solid"               ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "threadweaver"        ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "karchive"            ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kdbusaddons"         ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "ki18n"               ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kcrash"              ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kcodecs"             ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kauth"               ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kguiaddons"          ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kwidgetsaddons"      ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kitemviews"          ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kcompletion"         ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kconfigwidgets"      ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kiconthemes"         ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kservice"            ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kglobalaccel"        ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kxmlgui"             \
                "$ORIG_WD/patches/kxmlgui-drop-ktextwidgets.patch" \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kbookmarks"          ""                                          \
                "-DBUILD_TESTING=OFF -Wno-dev"
-InstallKDEExtraLib "kimageformats"       ""                                          \
"-DBUILD_TESTING=OFF -Wno-dev"  
-#################################################################################################
                
-# Build KF5 extra components
-
-# Marble for geolocation tools.
-
-InstallKDEExtraApp "marble"              \
                "$ORIG_WD/patches/marble-libs-install.patch"       \
                "-DWITH_DESIGNER_PLUGIN=OFF \
-                                                                                     \
                -DBUILD_MARBLE_TESTS=OFF \
-                                                                                     \
                -DBUILD_MARBLE_TOOLS=OFF \
-                                                                                     \
                -DBUILD_MARBLE_EXAMPLES=OFF \
-                                                                                     \
                -DBUILD_MARBLE_APPS=OFF \
-                                                                                     \
                -DBUILD_WITH_DBUS=OFF \
-                                                                                     \
                -DBUILD_TESTING=OFF \
-                                                                                     \
                -DQTONLY=ON \
-                                                                                     \
-Wno-dev" +# Create the build dir for the 3rdparty deps
+if [ ! -d $BUILDING_DIR ] ; then
+    mkdir $BUILDING_DIR
+fi
+if [ ! -d $DOWNLOAD_DIR ] ; then
+    mkdir $DOWNLOAD_DIR
+fi
+
+cd $BUILDING_DIR
+rm -rf $BUILDING_DIR/* || true
+
+${MXE_BUILD_TARGETS}-cmake $ORIG_WD/../3rdparty \
+                           -DMXE_TOOLCHAIN=${MXE_TOOLCHAIN} \
+                           -DMXE_BUILDROOT=${MXE_BUILDROOT} \
+                           -DCMAKE_BUILD_TYPE=relwithdebinfo \
+                           -DCMAKE_COLOR_MAKEFILE=ON \
+                           -DCMAKE_INSTALL_PREFIX=${MXE_INSTALL_PREFIX} \
+                           -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
+                           -DCMAKE_TOOLCHAIN_FILE=${MXE_TOOLCHAIN} \
+                           -DCMAKE_FIND_PREFIX_PATH=${CMAKE_PREFIX_PATH} \
+                           -DCMAKE_SYSTEM_INCLUDE_PATH=${CMAKE_PREFIX_PATH}/include \
\ +                           -DCMAKE_INCLUDE_PATH=${CMAKE_PREFIX_PATH}/include \
+                           -DCMAKE_LIBRARY_PATH=${CMAKE_PREFIX_PATH}/lib \
+                           -DZLIB_ROOT=${CMAKE_PREFIX_PATH} \
+                           -DINSTALL_ROOT=${MXE_INSTALL_PREFIX} \
+                           -DEXTERNALS_DOWNLOAD_DIR=$DOWNLOAD_DIR
+
+# NOTE: The order to compile each component here is very important.
+
+# core KF5 frameworks dependencies
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_extra-cmake-modules -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kconfig             -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_breeze-icons        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kcoreaddons         -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kwindowsystem       -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_solid               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_threadweaver        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_karchive            -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kdbusaddons         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_ki18n               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kcrash     \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kcodecs             -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build \
. --config RelWithDebInfo --target ext_kauth               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kguiaddons \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kwidgetsaddons      -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build \
. --config RelWithDebInfo --target ext_kitemviews          -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kcompletion         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kconfigwidgets      -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kiconthemes         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kservice            -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kglobalaccel        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kxmlgui             -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kbookmarks \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kimageformats       -- -j$CPU_CORES +
+# Geolocation support
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_marble     \
-- -j$CPU_CORES  
 # Marble install shared lib at wrong place.
 mv $MXE_INSTALL_PREFIX/libastro* $MXE_INSTALL_PREFIX/bin
 mv $MXE_INSTALL_PREFIX/libmarble* $MXE_INSTALL_PREFIX/bin
 
-# KCalCore for Calendar tool.
-# Disabled currently due to dependencies to KDE4LibsSupport
-#InstallKDEExtraApp "kcalcore"
-
 #################################################################################################
  
 export PATH=$ORIG_PATH
diff --git a/project/bundles/mxe/02-new.sh b/project/bundles/mxe/02-new.sh
new file mode 100755
index 0000000..689588d
--- /dev/null
+++ b/project/bundles/mxe/02-new.sh
@@ -0,0 +1,128 @@
+#! /bin/bash
+
+# Script to build extra libraries using MEX.
+#
+# Copyright (c) 2015-2016, Gilles Caulier, <caulier dot gilles at gmail dot com>
+#
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+#
+
+# Halt on error
+set -e
+
+#################################################################################################
 +# Manage script traces to log file
+
+mkdir -p ./logs
+exec > >(tee ./logs/build-extralibs.full.log) 2>&1
+
+#################################################################################################
 +
+echo "02-build-extralibs.sh : build extra libraries using MEX."
+echo "--------------------------------------------------------"
+
+#################################################################################################
 +# Pre-processing checks
+
+. ./config.sh
+. ./common.sh
+StartScript
+ChecksCPUCores
+
+#################################################################################################
 +
+# Pathes rules
+ORIG_PATH="$PATH"
+ORIG_WD="`pwd`"
+
+export PATH=$MXE_BUILDROOT/usr/bin:$MXE_INSTALL_PREFIX/qt5/bin:$PATH
+
+#################################################################################################
 +
+# Create the build dir for the 3rdparty deps
+if [ ! -d $BUILDING_DIR ] ; then
+    mkdir $BUILDING_DIR
+fi
+if [ ! -d $DOWNLOAD_DIR ] ; then
+    mkdir $DOWNLOAD_DIR
+fi
+
+cd $BUILDING_DIR
+rm -rf $BUILDING_DIR/* || true
+
+${MXE_BUILD_TARGETS}-cmake $ORIG_WD/../3rdparty \
+                           -DMXE_TOOLCHAIN=${MXE_TOOLCHAIN} \
+                           -DMXE_BUILDROOT=${MXE_BUILDROOT} \
+                           -DCMAKE_BUILD_TYPE=relwithdebinfo \
+                           -DCMAKE_COLOR_MAKEFILE=ON \
+                           -DCMAKE_INSTALL_PREFIX=${MXE_INSTALL_PREFIX} \
+                           -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON \
+                           -DCMAKE_TOOLCHAIN_FILE=${MXE_TOOLCHAIN} \
+                           -DCMAKE_FIND_PREFIX_PATH=${CMAKE_PREFIX_PATH} \
+                           -DCMAKE_SYSTEM_INCLUDE_PATH=${CMAKE_PREFIX_PATH}/include \
\ +                           -DCMAKE_INCLUDE_PATH=${CMAKE_PREFIX_PATH}/include \
+                           -DCMAKE_LIBRARY_PATH=${CMAKE_PREFIX_PATH}/lib \
+                           -DZLIB_ROOT=${CMAKE_PREFIX_PATH} \
+                           -DINSTALL_ROOT=${MXE_INSTALL_PREFIX} \
+                           -DEXTERNALS_DOWNLOAD_DIR=$DOWNLOAD_DIR
+
+# NOTE: The order to compile each component here is very important.
+
+# core KF5 frameworks dependencies
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_extra-cmake-modules -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kconfig             -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_breeze-icons        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kcoreaddons         -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kwindowsystem       -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_solid               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_threadweaver        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_karchive            -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kdbusaddons         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_ki18n               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kcrash     \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kcodecs             -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build \
. --config RelWithDebInfo --target ext_kauth               -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kguiaddons \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kwidgetsaddons      -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build \
. --config RelWithDebInfo --target ext_kitemviews          -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kcompletion         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kconfigwidgets      -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kiconthemes         -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kservice            -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target \
ext_kglobalaccel        -- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . \
--config RelWithDebInfo --target ext_kxmlgui             -- -j$CPU_CORES \
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_kbookmarks \
-- -j$CPU_CORES +${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo \
--target ext_kimageformats       -- -j$CPU_CORES +
+# Geolocation support
+${MXE_BUILD_TARGETS}-cmake --build . --config RelWithDebInfo --target ext_marble     \
-- -j$CPU_CORES +
+# Marble install shared lib at wrong place.
+mv $MXE_INSTALL_PREFIX/libastro* $MXE_INSTALL_PREFIX/bin
+mv $MXE_INSTALL_PREFIX/libmarble* $MXE_INSTALL_PREFIX/bin
+
+#################################################################################################
 +
+export PATH=$ORIG_PATH
+
+# Build PNG2Ico CLI tool used by ECM for host OS.
+
+cd $ORIG_WD/png2ico
+
+rm -f CMakeCache.txt > /dev/null
+
+cmake . \
+      -DCMAKE_BUILD_TYPE=debug \
+      -DCMAKE_COLOR_MAKEFILE=ON \
+      -Wno-dev
+
+make -j$CPU_CORES
+
+#################################################################################################
 +
+cd "$ORIG_WD"
+
+export PATH=$ORIG_PATH
+
+TerminateScript
diff --git a/project/bundles/mxe/config.sh b/project/bundles/mxe/config.sh
index c9b8642..72c4ec7 100644
--- a/project/bundles/mxe/config.sh
+++ b/project/bundles/mxe/config.sh
@@ -19,7 +19,7 @@ BUILDING_DIR="`pwd`/temp.build"
 
 #------------
 # IMPORTANT: Target Windows architecture to build installer. Possible values: 32 or \
                64 bits.
-MXE_ARCHBITS=64
+MXE_ARCHBITS=32
 #------------
 
 if [[ $MXE_ARCHBITS == 32 ]]; then


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic