File: 0007-Install-header-with-arch-specific-data-to-arch-speci.patch

package info (click to toggle)
foonathan-memory 0.7.4-3
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 1,644 kB
  • sloc: cpp: 12,425; xml: 139; sh: 48; makefile: 25
file content (83 lines) | stat: -rw-r--r-- 4,824 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
From: =?utf-8?q?Timo_R=C3=B6hling?= <timo@gaussglocke.de>
Date: Sat, 5 Dec 2020 00:55:26 +0100
Subject: Install header with arch-specific data to arch-specific location

---
 CMakeLists.txt                                           |  3 ++-
 include/foonathan/memory/detail/container_node_sizes.hpp |  6 +++---
 src/CMakeLists.txt                                       | 10 +++++-----
 3 files changed, 10 insertions(+), 9 deletions(-)

diff --git a/CMakeLists.txt b/CMakeLists.txt
index 624510a..c5fab35 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -24,7 +24,8 @@ set(CMAKE_DEBUG_POSTFIX "-dbg")
 if(UNIX OR VXWORKS)
     include(GNUInstallDirs)
 
-    set(FOONATHAN_MEMORY_INC_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}")
+    set(FOONATHAN_MEMORY_INC_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/foonathan_memory")
+    set(FOONATHAN_MEMORY_ARCH_INC_INSTALL_DIR "${CMAKE_INSTALL_INCLUDEDIR}/${HOST_TRIPLET}/foonathan_memory")
     set(FOONATHAN_MEMORY_RUNTIME_INSTALL_DIR "${CMAKE_INSTALL_BINDIR}")
     set(FOONATHAN_MEMORY_LIBRARY_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
     set(FOONATHAN_MEMORY_ARCHIVE_INSTALL_DIR "${CMAKE_INSTALL_LIBDIR}")
diff --git a/include/foonathan/memory/detail/container_node_sizes.hpp b/include/foonathan/memory/detail/container_node_sizes.hpp
index d561a46..3814665 100644
--- a/include/foonathan/memory/detail/container_node_sizes.hpp
+++ b/include/foonathan/memory/detail/container_node_sizes.hpp
@@ -1,10 +1,10 @@
-// Copyright (C) 2015-2025 Jonathan Müller and foonathan/memory contributors
+// Copyright (C) 2015-2023 Jonathan Müller and foonathan/memory contributors
 // SPDX-License-Identifier: Zlib
 
 #ifndef FOONATHAN_MEMORY_DETAIL_CONTAINER_NODE_SIZES_HPP_INCLUDED
 #define FOONATHAN_MEMORY_DETAIL_CONTAINER_NODE_SIZES_HPP_INCLUDED
 
-#include "align.hpp"
-#include "container_node_sizes_impl.hpp"
+#include <foonathan/memory/detail/align.hpp>
+#include <foonathan/memory/detail/container_node_sizes_impl.hpp>
 
 #endif //FOONATHAN_MEMORY_DETAIL_CONTAINER_NODE_SIZES_HPP_INCLUDED
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index 653b7eb..08e1744 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -47,8 +47,7 @@ set(header
         ${header_path}/temporary_allocator.hpp
         ${header_path}/threading.hpp
         ${header_path}/tracking.hpp
-        ${header_path}/virtual_memory.hpp
-        ${CMAKE_CURRENT_BINARY_DIR}/container_node_sizes_impl.hpp)
+        ${header_path}/virtual_memory.hpp)
 
 set(src
         detail/align.cpp
@@ -76,14 +75,15 @@ set(src
 configure_file("config.hpp.in" "${CMAKE_CURRENT_BINARY_DIR}/config_impl.hpp")
 
 # generate container_node_sizes.hpp if necessary
-if(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/container_node_sizes_impl.hpp)
-    get_container_node_sizes(${CMAKE_CURRENT_BINARY_DIR}/container_node_sizes_impl.hpp)
+if(NOT EXISTS ${CMAKE_CURRENT_BINARY_DIR}/foonathan/memory/detail/container_node_sizes_impl.hpp)
+    get_container_node_sizes(${CMAKE_CURRENT_BINARY_DIR}/foonathan/memory/detail/container_node_sizes_impl.hpp)
 endif()
 
 add_library(foonathan_memory ${detail_header} ${header} ${src})
 target_include_directories(foonathan_memory PUBLIC $<BUILD_INTERFACE:${FOONATHAN_MEMORY_SOURCE_DIR}/include/> # for client in subdirectory
                                                    $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}> # for generated files in build mode
                                                    $<INSTALL_INTERFACE:${FOONATHAN_MEMORY_INC_INSTALL_DIR}> # for client in install mode
+                                                   $<INSTALL_INTERFACE:${FOONATHAN_MEMORY_ARCH_INC_INSTALL_DIR}> # for arch-specific generated headers
                                             PRIVATE ${header_path}) # for source files
 target_compile_definitions(foonathan_memory PUBLIC
                             FOONATHAN_MEMORY=1
@@ -128,7 +128,7 @@ write_basic_package_version_file(${version_file}
                                  COMPATIBILITY AnyNewerVersion)
 
 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/config_impl.hpp DESTINATION ${FOONATHAN_MEMORY_INC_INSTALL_DIR}/foonathan/memory/)
-install(FILES ${CMAKE_CURRENT_BINARY_DIR}/container_node_sizes_impl.hpp DESTINATION ${FOONATHAN_MEMORY_INC_INSTALL_DIR}/foonathan/memory/detail)
+install(FILES ${CMAKE_CURRENT_BINARY_DIR}/foonathan/memory/detail/container_node_sizes_impl.hpp DESTINATION ${FOONATHAN_MEMORY_ARCH_INC_INSTALL_DIR}/foonathan/memory/detail)
 install(FILES ${header}                                   DESTINATION ${FOONATHAN_MEMORY_INC_INSTALL_DIR}/foonathan/memory)
 install(FILES ${detail_header}                            DESTINATION ${FOONATHAN_MEMORY_INC_INSTALL_DIR}/foonathan/memory/detail)
 install(FILES ${version_file}                             DESTINATION ${FOONATHAN_MEMORY_CMAKE_CONFIG_INSTALL_DIR})