1From 9a36b15d66c5e340cd8695415ce5867ad07ee2bb Mon Sep 17 00:00:00 2001
2From: Volker Enderlein <volkerenderlein@hotmail.com>
3Date: Sun, 8 Mar 2020 14:24:29 +0100
4Subject: [PATCH] Partially incorporating coin4.0.0a-patch from gentoo
5
6---
7 CMakeLists.txt | 63 ++++++++++++++++++++++++++------------------------
8 1 file changed, 33 insertions(+), 30 deletions(-)
9
10diff --git a/CMakeLists.txt b/CMakeLists.txt
11index 755bd9d59..d23f5bc0e 100644
12--- a/CMakeLists.txt
13+++ b/CMakeLists.txt
14@@ -1,8 +1,3 @@
15-if (POLICY  CMP0054)
16-  # CMake version 3.14.5 warns when the policy is not set and uses OLD behaviour
17-  cmake_policy(SET CMP0054 NEW)
18-endif()
19-
20 cmake_minimum_required(VERSION 3.0)
21 
22 set(COIN_MAJOR_VERSION 4)
23@@ -22,6 +17,11 @@ math(EXPR COIN_SO_VERSION ${PROJECT_VERSION_MAJOR}*20)
24 set(PROJECT_DESCRIPTION   "A high-level 3D visualization library with Open Inventor 2.1 API")
25 # ############################################################################
26 
27+if(POLICY CMP0054)
28+  # CMake version 3.14.5 warns when the policy is not set and uses OLD behaviour
29+  cmake_policy(SET CMP0054 NEW)
30+endif()
31+
32 if(POLICY CMP0072)
33   # get rid of OpenGL GLVND warning from CMake 3.11
34   cmake_policy(SET CMP0072 NEW)
35@@ -103,8 +103,8 @@ cmake_dependent_option(COIN_BUILD_MAC_AGL "Build for AGL on Mac OS X when ON. De
36 
37 report_prepare(
38   COIN_BUILD_SHARED_LIBS
39-  COIN_BUILD_TESTS 
40-  COIN_BUILD_DOCUMENTATION 
41+  COIN_BUILD_TESTS
42+  COIN_BUILD_DOCUMENTATION
43   COIN_BUILD_INTERNAL_DOCUMENTATION
44   COIN_BUILD_DOCUMENTATION_MAN
45   COIN_BUILD_DOCUMENTATION_QTHELP
46@@ -113,29 +113,29 @@ report_prepare(
47   HAVE_VRML97
48   COIN_HAVE_JAVASCRIPT
49   HAVE_NODEKITS
50-  HAVE_DRAGGERS 
51-  HAVE_MANIPULATORS 
52-  HAVE_SOUND 
53+  HAVE_DRAGGERS
54+  HAVE_MANIPULATORS
55+  HAVE_SOUND
56   HAVE_3DS_IMPORT_CAPABILITIES
57   USE_EXTERNAL_EXPAT
58-  USE_EXCEPTIONS 
59-  USE_SUPERGLU 
60-  FONTCONFIG_RUNTIME_LINKING   
61-  FREETYPE_RUNTIME_LINKING     
62-  LIBBZIP2_RUNTIME_LINKING     
63-  OPENAL_RUNTIME_LINKING       
64-  SIMAGE_RUNTIME_LINKING       
65-  ZLIB_RUNTIME_LINKING         
66-  GLU_RUNTIME_LINKING          
67-  SPIDERMONKEY_RUNTIME_LINKING 
68-  HAVE_MULTIPLE_VERSION 
69+  USE_EXCEPTIONS
70+  USE_SUPERGLU
71+  FONTCONFIG_RUNTIME_LINKING
72+  FREETYPE_RUNTIME_LINKING
73+  LIBBZIP2_RUNTIME_LINKING
74+  OPENAL_RUNTIME_LINKING
75+  SIMAGE_RUNTIME_LINKING
76+  ZLIB_RUNTIME_LINKING
77+  GLU_RUNTIME_LINKING
78+  SPIDERMONKEY_RUNTIME_LINKING
79+  HAVE_MULTIPLE_VERSION
80   IF_APPLE
81-    COIN_BUILD_MAC_FRAMEWORK 
82-    COIN_BUILD_MAC_X11 
83-    COIN_BUILD_MAC_AGL 
84+    COIN_BUILD_MAC_FRAMEWORK
85+    COIN_BUILD_MAC_X11
86+    COIN_BUILD_MAC_AGL
87   IF_MSVC
88     COIN_BUILD_MSVC_STATIC_RUNTIME
89-    COIN_BUILD_SINGLE_LIB 
90+    COIN_BUILD_SINGLE_LIB
91     MSVC_VERSION
92     COIN_BUILD_MSVC_MP
93 )
94@@ -147,8 +147,8 @@ if(HAVE_MULTIPLE_VERSION)
95     CMAKE_INSTALL_DATADIR
96     CMAKE_INSTALL_FULL_DATADIR
97     CMAKE_INSTALL_INCLUDEDIR
98-    CMAKE_INSTALL_FULL_INCLUDEDIR 
99-    CMAKE_INSTALL_DOCDIR 
100+    CMAKE_INSTALL_FULL_INCLUDEDIR
101+    CMAKE_INSTALL_DOCDIR
102     CMAKE_INSTALL_FULL_DOCDIR
103   )
104 else()
105@@ -534,9 +534,12 @@ else()
106   if(HAVE_MACH_O_DYLD_H)
107     check_symbol_exists(NSLookupAndBindSymbol mach-o/dyld.h HAVE_DYLD_RUNTIME_BINDING)
108   endif()
109-  check_library_exists(dl dlopen "" HAVE_DL_LIB)
110-  if(HAVE_DL_LIB)
111-    check_include_file(dlfcn.h HAVE_DLFCN_H)
112+  # On FreeBSD, NetBSD and OpenBSD there is no libdl, as the required
113+  # functionality is already built into libc. So use ${CMAKE_DL_LIBS} instead.
114+  check_include_file(dlfcn.h HAVE_DLFCN_H)
115+  if(HAVE_DLFCN_H)
116+    set(HAVE_DL_LIB 1)
117+    list(APPEND COIN_TARGET_LINK_LIBRARIES ${CMAKE_DL_LIBS})
118   endif()
119   check_library_exists(dld shl_load "" HAVE_DLD_LIB)
120 endif()
121-- 
1222.26.2
123
124