From d3bed75d4cde84d0a146b14b10f84d5116c98e0f Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Thu, 2 May 2024 16:18:03 -0500 Subject: [PATCH 1/5] Fix build on arm64 Signed-off-by: Addisu Z. Taddese --- CMakeLists.txt | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index d66ac69..c8da809 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -4,6 +4,13 @@ project(gz_ogre_next_vendor) find_package(ament_cmake REQUIRED) find_package(ament_cmake_vendor_package REQUIRED) +set(EXTRA_CMAKE_FLAGS) +if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm") + # Flags for non SIMD architectures + # https://github.com/gazebo-forks/ogre-2.3-release/blob/960bb19664879282b979e4ed8cb3ce278c875bdb/debian/rules#L21-L28 + set(EXTRA_CMAKE_FLAGS -DOGRE_SIMD_NEON:BOOL=FALSE -DOGRE_SIMD_SSE2:BOOL=FALSE) +endif() + ament_vendor(${PROJECT_NAME} VCS_URL https://github.com/OGRECave/ogre-next.git VCS_VERSION v2.3.3 @@ -24,6 +31,7 @@ ament_vendor(${PROJECT_NAME} -DOGRE_USE_NEW_PROJECT_NAME:BOOL=ON -DOGRE_VULKAN_WINDOW_NULL:BOOL=TRUE -DOGRE_VULKAN_WINDOW_XCB:BOOL=ON + ${EXTRA_CMAKE_FLAGS} GLOBAL_HOOK PATCHES patches/0001-Fix-incomplete-vulkan-linkage.patch From 8471103bac7351e3685d474c89c8fcd46c88bfd1 Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Thu, 2 May 2024 16:47:09 -0500 Subject: [PATCH 2/5] Add debug message Signed-off-by: Addisu Z. Taddese --- CMakeLists.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/CMakeLists.txt b/CMakeLists.txt index c8da809..4f102b8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,6 +5,7 @@ find_package(ament_cmake REQUIRED) find_package(ament_cmake_vendor_package REQUIRED) set(EXTRA_CMAKE_FLAGS) +message("Detected arch ${CMAKE_SYSTEM_PROCESSOR}") if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm") # Flags for non SIMD architectures # https://github.com/gazebo-forks/ogre-2.3-release/blob/960bb19664879282b979e4ed8cb3ce278c875bdb/debian/rules#L21-L28 From c955e4c79f005a7afbacb574084196fc70217b2e Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Thu, 2 May 2024 17:08:44 -0500 Subject: [PATCH 3/5] Detect aarch64 and armhf Signed-off-by: Addisu Z. Taddese --- CMakeLists.txt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 4f102b8..bc6cf3c 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,7 +6,8 @@ find_package(ament_cmake_vendor_package REQUIRED) set(EXTRA_CMAKE_FLAGS) message("Detected arch ${CMAKE_SYSTEM_PROCESSOR}") -if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm") +if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm64|aarch64|armhf") + message("Disabling SIMD_NEON and SIMD_SSE2") # Flags for non SIMD architectures # https://github.com/gazebo-forks/ogre-2.3-release/blob/960bb19664879282b979e4ed8cb3ce278c875bdb/debian/rules#L21-L28 set(EXTRA_CMAKE_FLAGS -DOGRE_SIMD_NEON:BOOL=FALSE -DOGRE_SIMD_SSE2:BOOL=FALSE) From 2f246be2187da8edf3ddf798e590a9a62679d0fc Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Fri, 3 May 2024 11:21:56 -0500 Subject: [PATCH 4/5] Remove debug messages Signed-off-by: Addisu Z. Taddese --- CMakeLists.txt | 2 -- 1 file changed, 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index bc6cf3c..0f36233 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,9 +5,7 @@ find_package(ament_cmake REQUIRED) find_package(ament_cmake_vendor_package REQUIRED) set(EXTRA_CMAKE_FLAGS) -message("Detected arch ${CMAKE_SYSTEM_PROCESSOR}") if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm64|aarch64|armhf") - message("Disabling SIMD_NEON and SIMD_SSE2") # Flags for non SIMD architectures # https://github.com/gazebo-forks/ogre-2.3-release/blob/960bb19664879282b979e4ed8cb3ce278c875bdb/debian/rules#L21-L28 set(EXTRA_CMAKE_FLAGS -DOGRE_SIMD_NEON:BOOL=FALSE -DOGRE_SIMD_SSE2:BOOL=FALSE) From d4985f42687b548b9d172fb760bb0006ad0e2dae Mon Sep 17 00:00:00 2001 From: "Addisu Z. Taddese" Date: Tue, 7 May 2024 12:40:48 -0500 Subject: [PATCH 5/5] Update regex Co-authored-by: Jose Luis Rivero --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 0f36233..a904707 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -5,7 +5,7 @@ find_package(ament_cmake REQUIRED) find_package(ament_cmake_vendor_package REQUIRED) set(EXTRA_CMAKE_FLAGS) -if(${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm64|aarch64|armhf") +if(CMAKE_SYSTEM_PROCESSOR MATCHES "^(aarch64.*|AARCH64.*|arm64.*|ARM64.*|arm.*|ARM.*)") # Flags for non SIMD architectures # https://github.com/gazebo-forks/ogre-2.3-release/blob/960bb19664879282b979e4ed8cb3ce278c875bdb/debian/rules#L21-L28 set(EXTRA_CMAKE_FLAGS -DOGRE_SIMD_NEON:BOOL=FALSE -DOGRE_SIMD_SSE2:BOOL=FALSE)