| @@ -1,115 +1,131 @@ | | | @@ -1,115 +1,131 @@ |
1 | $NetBSD: patch-CMakeLists.txt,v 1.1 2019/11/04 18:35:22 nros Exp $ | | 1 | $NetBSD: patch-CMakeLists.txt,v 1.2 2019/11/04 18:53:13 nros Exp $ |
2 | | | 2 | |
3 | * sanitze the names and dirs to search for libs and headers files | | 3 | * sanitze the names and dirs to search for libs and headers files |
4 | * use PATH_SUFFIX fix to find openjpeg | | 4 | * use PATH_SUFFIX fix to find openjpeg |
5 | * install bins and data into the right directory | | 5 | * install bins and data into the right directory |
| | | 6 | * don't regenerate translations (no need for qttools dependecy) |
6 | * don't install cmake files in the translation directory | | 7 | * don't install cmake files in the translation directory |
7 | * install icon and desktop files | | 8 | * install icon and desktop files |
8 | * install hi-res maps | | 9 | * install hi-res maps |
9 | | | 10 | |
10 | --- CMakeLists.txt.orig 2019-07-05 09:01:01.000000000 +0000 | | 11 | --- CMakeLists.txt.orig 2019-07-05 09:01:01.000000000 +0000 |
11 | +++ CMakeLists.txt | | 12 | +++ CMakeLists.txt |
12 | @@ -54,71 +54,23 @@ find_package(Qt5Xml CONFIG REQUIRED) | | 13 | @@ -54,71 +54,23 @@ find_package(Qt5Xml CONFIG REQUIRED) |
13 | include_directories(${Qt5Xml_INCLUDE_DIRS}) | | 14 | include_directories(${Qt5Xml_INCLUDE_DIRS}) |
14 | | | 15 | |
15 | find_library(LIBNOVA_LIBRARY | | 16 | find_library(LIBNOVA_LIBRARY |
16 | - NAMES "libnova.a" "libnova.so" | | 17 | - NAMES "libnova.a" "libnova.so" |
17 | - PATHS | | 18 | - PATHS |
18 | - $ENV{EXTERNLIBS}/lib | | 19 | - $ENV{EXTERNLIBS}/lib |
19 | - ~/Library/Frameworks | | 20 | - ~/Library/Frameworks |
20 | - /Library/Frameworks | | 21 | - /Library/Frameworks |
21 | - /usr/local | | 22 | - /usr/local |
22 | - /usr | | 23 | - /usr |
23 | - /sw | | 24 | - /sw |
24 | - /opt/local | | 25 | - /opt/local |
25 | - /opt/csw | | 26 | - /opt/csw |
26 | - /opt | | 27 | - /opt |
27 | - PATH_SUFFIXES lib lib64 lib/x86_64-linux-gnu lib/i386-linux-gnu lib/armhf-linux-gnu lib/arm64-linux-gnu | | 28 | - PATH_SUFFIXES lib lib64 lib/x86_64-linux-gnu lib/i386-linux-gnu lib/armhf-linux-gnu lib/arm64-linux-gnu |
28 | + NAMES "nova" "libnova" | | 29 | + NAMES "nova" "libnova" |
29 | REQUIRED | | 30 | REQUIRED |
30 | ) | | 31 | ) |
31 | find_path(LIBNOVA_INCLUDE_DIR | | 32 | find_path(LIBNOVA_INCLUDE_DIR |
32 | - NAMES "libnova/libnova.h" "libnova.h" | | 33 | - NAMES "libnova/libnova.h" "libnova.h" |
33 | - PATHS | | 34 | - PATHS |
34 | - $ENV{EXTERNLIBS}/include | | 35 | - $ENV{EXTERNLIBS}/include |
35 | - ~/Library/Frameworks/include | | 36 | - ~/Library/Frameworks/include |
36 | - /Library/Frameworks/include | | 37 | - /Library/Frameworks/include |
37 | - /usr/local/include | | 38 | - /usr/local/include |
38 | - /usr/include | | 39 | - /usr/include |
39 | - /sw/include # Fink | | 40 | - /sw/include # Fink |
40 | - /opt/local/include # DarwinPorts | | 41 | - /opt/local/include # DarwinPorts |
41 | - /opt/csw/include # Blastwave | | 42 | - /opt/csw/include # Blastwave |
42 | - /opt/include | | 43 | - /opt/include |
43 | + NAMES "libnova/libnova.h" | | 44 | + NAMES "libnova/libnova.h" |
44 | REQUIRED | | 45 | REQUIRED |
45 | ) | | 46 | ) |
46 | include_directories(${LIBNOVA_INCLUDE_DIR}) | | 47 | include_directories(${LIBNOVA_INCLUDE_DIR}) |
47 | | | 48 | |
48 | #find_package(OpenJPEG REQUIRED) | | 49 | #find_package(OpenJPEG REQUIRED) |
49 | find_library(OPENJPEG_LIBRARIES | | 50 | find_library(OPENJPEG_LIBRARIES |
50 | -# NAMES "libopenjp2.a" "libopenjp2.so" "libopenjpeg.so.2" "libopenjp2.dll.a" | | 51 | -# NAMES "libopenjp2.a" "libopenjp2.so" "libopenjpeg.so.2" "libopenjp2.dll.a" |
51 | - NAMES "libopenjp2.so.7" "libopenjp2.so" "libopenjp2.a" "libopenjpeg.so.2" "libopenjp2.dll.a" | | 52 | - NAMES "libopenjp2.so.7" "libopenjp2.so" "libopenjp2.a" "libopenjpeg.so.2" "libopenjp2.dll.a" |
52 | - PATHS | | 53 | - PATHS |
53 | - $ENV{EXTERNLIBS}/lib | | 54 | - $ENV{EXTERNLIBS}/lib |
54 | - ~/Library/Frameworks | | 55 | - ~/Library/Frameworks |
55 | - /Library/Frameworks | | 56 | - /Library/Frameworks |
56 | - /usr/local | | 57 | - /usr/local |
57 | - /usr | | 58 | - /usr |
58 | - /sw | | 59 | - /sw |
59 | - /opt/local | | 60 | - /opt/local |
60 | - /opt/csw | | 61 | - /opt/csw |
61 | - /opt | | 62 | - /opt |
62 | - PATH_SUFFIXES lib lib64 | | 63 | - PATH_SUFFIXES lib lib64 |
63 | + NAMES "openjp2" "libopenjp2" | | 64 | + NAMES "openjp2" "libopenjp2" |
64 | REQUIRED | | 65 | REQUIRED |
65 | ) | | 66 | ) |
66 | find_path(OPENJPEG_INCLUDE_DIR | | 67 | find_path(OPENJPEG_INCLUDE_DIR |
67 | NAMES "openjpeg.h" | | 68 | NAMES "openjpeg.h" |
68 | - PATHS | | 69 | - PATHS |
69 | - $ENV{EXTERNLIBS}/include | | 70 | - $ENV{EXTERNLIBS}/include |
70 | - ~/Library/Frameworks/include | | 71 | - ~/Library/Frameworks/include |
71 | - /Library/Frameworks/include | | 72 | - /Library/Frameworks/include |
72 | - /usr/local/include | | 73 | - /usr/local/include |
73 | - /usr/local/include/openjpeg-2.3 | | 74 | - /usr/local/include/openjpeg-2.3 |
74 | - /usr/include/openjpeg-2.3 | | 75 | - /usr/include/openjpeg-2.3 |
75 | - /usr/local/include/openjpeg-2.1 | | 76 | - /usr/local/include/openjpeg-2.1 |
76 | - /usr/include/openjpeg-2.1 | | 77 | - /usr/include/openjpeg-2.1 |
77 | - /usr/local/include/openjpeg-2.2 | | 78 | - /usr/local/include/openjpeg-2.2 |
78 | - /usr/include/openjpeg-2.2 | | 79 | - /usr/include/openjpeg-2.2 |
79 | - /usr/include | | 80 | - /usr/include |
80 | - /sw/include # Fink | | 81 | - /sw/include # Fink |
81 | - /opt/local/include # DarwinPorts | | 82 | - /opt/local/include # DarwinPorts |
82 | - /opt/csw/include # Blastwave | | 83 | - /opt/csw/include # Blastwave |
83 | - /opt/include | | 84 | - /opt/include |
84 | + PATH_SUFFIXES openjpeg-2.3 | | 85 | + PATH_SUFFIXES openjpeg-2.3 |
85 | REQUIRED | | 86 | REQUIRED |
86 | ) | | 87 | ) |
87 | include_directories(${OPENJPEG_INCLUDE_DIR}) | | 88 | include_directories(${OPENJPEG_INCLUDE_DIR}) |
88 | @@ -222,8 +174,9 @@ set(PREFIX_PKGDATA ".") | | 89 | @@ -212,22 +164,18 @@ include_directories(${PNG_INCLUDE_DIR}) |
| | | 90 | configure_file(cmake/Version.h.in ${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/include/Version.h) |
| | | 91 | include_directories(${CMAKE_CURRENT_BINARY_DIR}${CMAKE_FILES_DIRECTORY}/include) |
| | | 92 | |
| | | 93 | -if(APPLE) |
| | | 94 | -set(PREFIX_BIN ${PROJECT_NAME}) |
| | | 95 | -set(PREFIX_PKGDATA ${PROJECT_NAME}) |
| | | 96 | -endif() |
| | | 97 | if(WIN32) |
| | | 98 | set(PREFIX_BIN ".") |
| | | 99 | set(PREFIX_PKGDATA ".") |
89 | endif() | | 100 | endif() |
90 | if(UNIX AND NOT APPLE) | | 101 | -if(UNIX AND NOT APPLE) |
| | | 102 | +if(UNIX) |
91 | # This is not exactly a good idea on linux - the code should be changed so that the executable would go to /usr/local/bin and the data to /usr/local/share/XyGrib | | 103 | # This is not exactly a good idea on linux - the code should be changed so that the executable would go to /usr/local/bin and the data to /usr/local/share/XyGrib |
92 | -set(PREFIX_BIN ${PROJECT_NAME}) | | 104 | -set(PREFIX_BIN ${PROJECT_NAME}) |
93 | -set(PREFIX_PKGDATA ${PROJECT_NAME}) | | 105 | -set(PREFIX_PKGDATA ${PROJECT_NAME}) |
94 | +include(GNUInstallDirs) | | 106 | +include(GNUInstallDirs) |
95 | +set(PREFIX_BIN ${CMAKE_INSTALL_FULL_BINDIR}) | | 107 | +set(PREFIX_BIN ${CMAKE_INSTALL_FULL_BINDIR}) |
96 | +set(PREFIX_PKGDATA ${CMAKE_INSTALL_FULL_DATADIR}/openGribs/${PROJECT_NAME}) | | 108 | +set(PREFIX_PKGDATA ${CMAKE_INSTALL_FULL_DATADIR}/openGribs/${PROJECT_NAME}) |
97 | endif() | | 109 | endif() |
98 | | | 110 | |
99 | add_subdirectory(src) | | 111 | add_subdirectory(src) |
100 | @@ -241,4 +194,14 @@ set_target_properties(${PROJECT_NAME} PR | | 112 | -add_subdirectory(data/tr) |
| | | 113 | |
| | | 114 | # Installation |
| | | 115 | # macOS bundle parameters |
| | | 116 | @@ -241,4 +189,14 @@ set_target_properties(${PROJECT_NAME} PR |
101 | set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_BUNDLE_VERSION "${XYGRIB_VERSION}") | | 117 | set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_BUNDLE_VERSION "${XYGRIB_VERSION}") |
102 | set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_COPYRIGHT "${PROJECT_NAME} Authors") | | 118 | set_target_properties(${PROJECT_NAME} PROPERTIES MACOSX_BUNDLE_COPYRIGHT "${PROJECT_NAME} Authors") |
103 | # Install data | | 119 | # Install data |
104 | -install(DIRECTORY data DESTINATION ${PREFIX_PKGDATA}) | | 120 | -install(DIRECTORY data DESTINATION ${PREFIX_PKGDATA}) |
105 | +install(DIRECTORY data DESTINATION ${PREFIX_PKGDATA} | | 121 | +install(DIRECTORY data DESTINATION ${PREFIX_PKGDATA} |
106 | + PATTERN "CMakeFiles" EXCLUDE | | 122 | + PATTERN "CMakeFiles" EXCLUDE |
107 | + PATTERN "CMakeLists.txt" EXCLUDE | | 123 | + PATTERN "CMakeLists.txt" EXCLUDE |
108 | + PATTERN "Makefile" EXCLUDE | | 124 | + PATTERN "Makefile" EXCLUDE |
109 | + PATTERN "cmake_install.cmake" EXCLUDE | | 125 | + PATTERN "cmake_install.cmake" EXCLUDE |
110 | + PATTERN "*.ts" EXCLUDE) | | 126 | + PATTERN "*.ts" EXCLUDE) |
111 | +install(FILES debian/xygrib.desktop | | 127 | +install(FILES debian/xygrib.desktop |
112 | + DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/applications) | | 128 | + DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/applications) |
113 | +install(FILES debian/xygrib.png | | 129 | +install(FILES debian/xygrib.png |
114 | + DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/pixmaps) | | 130 | + DESTINATION ${CMAKE_INSTALL_FULL_DATADIR}/pixmaps) |
115 | +install(DIRECTORY ../data/ DESTINATION ${PREFIX_PKGDATA}) | | 131 | +install(DIRECTORY ../data/ DESTINATION ${PREFIX_PKGDATA}) |