Message ID | 1416254561-12691-1-git-send-email-volker.krause@kdab.com |
---|---|
State | Accepted |
Headers | show |
Volker Krause <volker.krause@kdab.com> wrote in
news:1416254561-12691-1-git-send-email-volker.krause@kdab.com:
Hi,
your patch works with my proposed x265 package, therefore:
Reviewed-by: Bernd Kuhls <bernd.kuhls@t-online.de>
I uploaded v2 of my x265 patch set which depends on your patch.
Regards, Bernd
Hi Volker, Le 17/11/2014 21:02, Volker Krause a écrit : > This is rarely needed by packages, but convenient to have when it is. > > Signed-off-by: Volker Krause <volker.krause@kdab.com> > --- > Changes v2 -> v3: > - fixed endianess handling for ARM v4-v7 > - coding style > > Changes v1 -> v2: > - added missing qstrip > - set the correct ARM variant as done in > http://patchwork.ozlabs.org/patch/408501/ > Openpowerlink package compiled with your patch and [1] applied. Reviewed-by: Romain Naour <romain.naour@openwide.fr> [1] http://patchwork.ozlabs.org/patch/413219/ Best regards, Romain
On Mon, Nov 17, 2014 at 9:02 PM, Volker Krause <volker.krause@kdab.com> wrote: > This is rarely needed by packages, but convenient to have when it is. > > Signed-off-by: Volker Krause <volker.krause@kdab.com> Acked-by: Samuel Martin <s.martin49@gmail.com> > --- > Changes v2 -> v3: > - fixed endianess handling for ARM v4-v7 > - coding style > > Changes v1 -> v2: > - added missing qstrip > - set the correct ARM variant as done in > http://patchwork.ozlabs.org/patch/408501/ > > package/pkg-cmake.mk | 22 ++++++++++++++++++++++ > support/misc/toolchainfile.cmake.in | 1 + > 2 files changed, 23 insertions(+) > > diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk > index c8735ef..85fda86 100644 > --- a/package/pkg-cmake.mk > +++ b/package/pkg-cmake.mk > @@ -180,6 +180,27 @@ host-cmake-package = $(call inner-cmake-package,host-$(pkgname),$(call UPPERCASE > # Generation of the CMake toolchain file > ################################################################################ > > +# CMAKE_SYSTEM_PROCESSOR should match uname -m > +ifeq ($(BR2_ARM_CPU_ARMV4),y) > +ARM_VARIANT = armv4 > +else ifeq ($(BR2_ARM_CPU_ARMV5),y) > +ARM_VARIANT = armv5 > +else ifeq ($(BR2_ARM_CPU_ARMV6),y) > +ARM_VARIANT = armv6 > +else ifeq ($(BR2_ARM_CPU_ARMV7A),y) > +ARM_VARIANT = armv7 > +endif > + > +ifeq ($(BR2_arm),y) > +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)l > +else ifeq ($(BR2_armeb),y) > +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)b > +endif > + > +ifndef CMAKE_SYSTEM_PROCESSOR > +CMAKE_SYSTEM_PROCESSOR = $(BR2_ARCH) > +endif > + > # In order to allow the toolchain to be relocated, we calculate the HOST_DIR > # based on the toolchainfile.cmake file's location: $(HOST_DIR)/usr/share/buildroot > # In all the other variables, HOST_DIR will be replaced by RELOCATED_HOST_DIR, > @@ -193,5 +214,6 @@ $(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake: > -e 's:@@TARGET_LDFLAGS@@:$(call qstrip,$(TARGET_LDFLAGS)):' \ > -e 's:@@TARGET_CC_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CC_NOCCACHE))):' \ > -e 's:@@TARGET_CXX_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CXX_NOCCACHE))):' \ > + -e 's:@@CMAKE_SYSTEM_PROCESSOR@@:$(call qstrip,$(CMAKE_SYSTEM_PROCESSOR)):' \ > $(TOPDIR)/support/misc/toolchainfile.cmake.in \ > > $@ > diff --git a/support/misc/toolchainfile.cmake.in b/support/misc/toolchainfile.cmake.in > index 4ca3d35..816af13 100644 > --- a/support/misc/toolchainfile.cmake.in > +++ b/support/misc/toolchainfile.cmake.in > @@ -11,6 +11,7 @@ > string(REPLACE "/usr/share/buildroot" "" RELOCATED_HOST_DIR ${CMAKE_CURRENT_LIST_DIR}) > > set(CMAKE_SYSTEM_NAME Linux) > +set(CMAKE_SYSTEM_PROCESSOR @@CMAKE_SYSTEM_PROCESSOR@@) > > set(CMAKE_C_FLAGS "@@TARGET_CFLAGS@@ ${CMAKE_C_FLAGS}" CACHE STRING "Buildroot CFLAGS") > set(CMAKE_CXX_FLAGS "@@TARGET_CXXFLAGS@@ ${CMAKE_CXX_FLAGS}" CACHE STRING "Buildroot CXXFLAGS") > -- > 1.8.4.5 > > _______________________________________________ > buildroot mailing list > buildroot@busybox.net > http://lists.busybox.net/mailman/listinfo/buildroot
Dear Volker Krause, On Mon, 17 Nov 2014 21:02:41 +0100, Volker Krause wrote: > This is rarely needed by packages, but convenient to have when it is. > > Signed-off-by: Volker Krause <volker.krause@kdab.com> Thanks, I've applied your patch, with a few changes (see below). > +# CMAKE_SYSTEM_PROCESSOR should match uname -m > +ifeq ($(BR2_ARM_CPU_ARMV4),y) > +ARM_VARIANT = armv4 > +else ifeq ($(BR2_ARM_CPU_ARMV5),y) > +ARM_VARIANT = armv5 > +else ifeq ($(BR2_ARM_CPU_ARMV6),y) > +ARM_VARIANT = armv6 > +else ifeq ($(BR2_ARM_CPU_ARMV7A),y) > +ARM_VARIANT = armv7 > +endif The namespace of variables is global, and we don't want pkg-cmake.mk to define a variable with a name as "global" as ARM_VARIANT. So I've renamed this variable to CMAKE_SYSTEM_PROCESSOR_ARM_VARIANT. > + > +ifeq ($(BR2_arm),y) > +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)l > +else ifeq ($(BR2_armeb),y) > +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)b > +endif > + > +ifndef CMAKE_SYSTEM_PROCESSOR > +CMAKE_SYSTEM_PROCESSOR = $(BR2_ARCH) > +endif I've changed this to the more logical (IMO): ifeq ($(BR2_arm),y) ... else ifeq ($(BR2_armeb),y) ... else ... = $(BR2_ARCH) endif See: http://git.buildroot.net/buildroot/commit/?id=c1e41153e662c7d49d7e0d1bf5e7a953d784f849 For the result. Thanks, Thomas
diff --git a/package/pkg-cmake.mk b/package/pkg-cmake.mk index c8735ef..85fda86 100644 --- a/package/pkg-cmake.mk +++ b/package/pkg-cmake.mk @@ -180,6 +180,27 @@ host-cmake-package = $(call inner-cmake-package,host-$(pkgname),$(call UPPERCASE # Generation of the CMake toolchain file ################################################################################ +# CMAKE_SYSTEM_PROCESSOR should match uname -m +ifeq ($(BR2_ARM_CPU_ARMV4),y) +ARM_VARIANT = armv4 +else ifeq ($(BR2_ARM_CPU_ARMV5),y) +ARM_VARIANT = armv5 +else ifeq ($(BR2_ARM_CPU_ARMV6),y) +ARM_VARIANT = armv6 +else ifeq ($(BR2_ARM_CPU_ARMV7A),y) +ARM_VARIANT = armv7 +endif + +ifeq ($(BR2_arm),y) +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)l +else ifeq ($(BR2_armeb),y) +CMAKE_SYSTEM_PROCESSOR = $(ARM_VARIANT)b +endif + +ifndef CMAKE_SYSTEM_PROCESSOR +CMAKE_SYSTEM_PROCESSOR = $(BR2_ARCH) +endif + # In order to allow the toolchain to be relocated, we calculate the HOST_DIR # based on the toolchainfile.cmake file's location: $(HOST_DIR)/usr/share/buildroot # In all the other variables, HOST_DIR will be replaced by RELOCATED_HOST_DIR, @@ -193,5 +214,6 @@ $(HOST_DIR)/usr/share/buildroot/toolchainfile.cmake: -e 's:@@TARGET_LDFLAGS@@:$(call qstrip,$(TARGET_LDFLAGS)):' \ -e 's:@@TARGET_CC_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CC_NOCCACHE))):' \ -e 's:@@TARGET_CXX_NOCCACHE@@:$(subst $(HOST_DIR)/,,$(call qstrip,$(TARGET_CXX_NOCCACHE))):' \ + -e 's:@@CMAKE_SYSTEM_PROCESSOR@@:$(call qstrip,$(CMAKE_SYSTEM_PROCESSOR)):' \ $(TOPDIR)/support/misc/toolchainfile.cmake.in \ > $@ diff --git a/support/misc/toolchainfile.cmake.in b/support/misc/toolchainfile.cmake.in index 4ca3d35..816af13 100644 --- a/support/misc/toolchainfile.cmake.in +++ b/support/misc/toolchainfile.cmake.in @@ -11,6 +11,7 @@ string(REPLACE "/usr/share/buildroot" "" RELOCATED_HOST_DIR ${CMAKE_CURRENT_LIST_DIR}) set(CMAKE_SYSTEM_NAME Linux) +set(CMAKE_SYSTEM_PROCESSOR @@CMAKE_SYSTEM_PROCESSOR@@) set(CMAKE_C_FLAGS "@@TARGET_CFLAGS@@ ${CMAKE_C_FLAGS}" CACHE STRING "Buildroot CFLAGS") set(CMAKE_CXX_FLAGS "@@TARGET_CXXFLAGS@@ ${CMAKE_CXX_FLAGS}" CACHE STRING "Buildroot CXXFLAGS")
This is rarely needed by packages, but convenient to have when it is. Signed-off-by: Volker Krause <volker.krause@kdab.com> --- Changes v2 -> v3: - fixed endianess handling for ARM v4-v7 - coding style Changes v1 -> v2: - added missing qstrip - set the correct ARM variant as done in http://patchwork.ozlabs.org/patch/408501/ package/pkg-cmake.mk | 22 ++++++++++++++++++++++ support/misc/toolchainfile.cmake.in | 1 + 2 files changed, 23 insertions(+)