diff mbox

[Bug,6632] CMake use host pkg-config

Message ID 20131030102915.8FD369BC3D@busybox.osuosl.org
State Superseded
Headers show

Commit Message

bugzilla@busybox.net Oct. 30, 2013, 10:29 a.m. UTC
https://bugs.busybox.net/show_bug.cgi?id=6632

--- Comment #3 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2013-10-30 10:29:15 UTC ---
What about something like:

                $$($$(PKG)_CONF_OPT) \
@@ -74,7 +74,7 @@ else
 define $(2)_CONFIGURE_CMDS
        (cd $$($$(PKG)_BUILDDIR) && \
        rm -f CMakeCache.txt && \
-       $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
+       $(HOST_MAKE_ENV) $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
                -DCMAKE_INSTALL_SO_NO_EXE=0 \
                -DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \
                -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="BOTH" \

Comments

Arnout Vandecappelle Oct. 30, 2013, 5:25 p.m. UTC | #1
Hi Thomas,

On 30/10/13 11:29, bugzilla@busybox.net wrote:
> https://bugs.busybox.net/show_bug.cgi?id=6632
>
> --- Comment #3 from Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 2013-10-30 10:29:15 UTC ---
> What about something like:
>
> diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
> index 0e08722..70014b5 100644
> --- a/package/pkg-cmake.mk
> +++ b/package/pkg-cmake.mk
> @@ -62,7 +62,7 @@ ifeq ($(5),target)
>   define $(2)_CONFIGURE_CMDS
>          (cd $$($$(PKG)_BUILDDIR) && \
>          rm -f CMakeCache.txt && \
> -       $$($$(PKG)_CONF_ENV) $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
> +       $(TARGET_MAKE_ENV) $$($$(PKG)_CONF_ENV) $(HOST_DIR)/usr/bin/cmake
> $$($$(PKG)_SRCDIR) \

  Maybe we should generalize this, and export the elements of 
TARGET_MAKE_ENV for all target goals:

ifeq ($(5),target)
$$($(2)_TARGET_INSTALL_TARGET):         export PATH=$(TARGET_PATH)
$$($(2)_TARGET_INSTALL_STAGING):        export PATH=$(TARGET_PATH)
$$($(2)_TARGET_INSTALL_IMAGES):         export PATH=$(TARGET_PATH)
$$($(2)_TARGET_INSTALL_HOST):           export PATH=$(TARGET_PATH)
$$($(2)_TARGET_BUILD):                  export PATH=$(TARGET_PATH)
$$($(2)_TARGET_CONFIGURE):              export PATH=$(TARGET_PATH)
$$($(2)_TARGET_RSYNC):                  export PATH=$(TARGET_PATH)
$$($(2)_TARGET_RSYNC_SOURCE):           export PATH=$(TARGET_PATH)
$$($(2)_TARGET_PATCH):                  export PATH=$(TARGET_PATH)
$$($(2)_TARGET_EXTRACT):                export PATH=$(TARGET_PATH)
$$($(2)_TARGET_SOURCE):                 export PATH=$(TARGET_PATH)
$$($(2)_TARGET_UNINSTALL):              export PATH=$(TARGET_PATH)
$$($(2)_TARGET_CLEAN):                  export PATH=$(TARGET_PATH)
$$($(2)_TARGET_DIRCLEAN):               export PATH=$(TARGET_PATH)
endif

  And so on for all the other variables. Unfortunately you need a 
separate line for each variable, you can't do something like 'export 
$(TARGET_MAKE_ENV)' on the right-hand side.

  Anyway, it's just an idea, cause it's quite a big change that will 
probably break some things.

  Regards,
  Arnout


>
> -DCMAKE_TOOLCHAIN_FILE="$$(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake" \
>                  -DCMAKE_INSTALL_PREFIX="/usr" \
>                  $$($$(PKG)_CONF_OPT) \
> @@ -74,7 +74,7 @@ else
>   define $(2)_CONFIGURE_CMDS
>          (cd $$($$(PKG)_BUILDDIR) && \
>          rm -f CMakeCache.txt && \
> -       $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
> +       $(HOST_MAKE_ENV) $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
>                  -DCMAKE_INSTALL_SO_NO_EXE=0 \
>                  -DCMAKE_FIND_ROOT_PATH="$$(HOST_DIR)" \
>                  -DCMAKE_FIND_ROOT_PATH_MODE_PROGRAM="BOTH" \
>
diff mbox

Patch

diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk
index 0e08722..70014b5 100644
--- a/package/pkg-cmake.mk
+++ b/package/pkg-cmake.mk
@@ -62,7 +62,7 @@  ifeq ($(5),target)
 define $(2)_CONFIGURE_CMDS
        (cd $$($$(PKG)_BUILDDIR) && \
        rm -f CMakeCache.txt && \
-       $$($$(PKG)_CONF_ENV) $(HOST_DIR)/usr/bin/cmake $$($$(PKG)_SRCDIR) \
+       $(TARGET_MAKE_ENV) $$($$(PKG)_CONF_ENV) $(HOST_DIR)/usr/bin/cmake
$$($$(PKG)_SRCDIR) \
               
-DCMAKE_TOOLCHAIN_FILE="$$(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake" \
                -DCMAKE_INSTALL_PREFIX="/usr" \