Skip to content

Commit 3da7dc4

Browse files
committed
fix difference between gnome 43 and less
1 parent 1cf7c43 commit 3da7dc4

File tree

1 file changed

+90
-79
lines changed

1 file changed

+90
-79
lines changed

CMakeLists.txt

Lines changed: 90 additions & 79 deletions
Original file line numberDiff line numberDiff line change
@@ -80,52 +80,6 @@ target_sources(Qldd PRIVATE ${SOURCES})
8080
target_compile_definitions(Qldd PRIVATE -DPROJECT_VERSION="${PROJECT_VERSION}")
8181
target_link_libraries(Qldd PRIVATE ${QtVer}::Widgets)
8282

83-
if(APPLE)
84-
set(CMAKE_MACOSX_BUNDLE ON)
85-
set(CMAKE_MACOSX_RPATH ON)
86-
install(TARGETS Qldd
87-
BUNDLE DESTINATION .
88-
RUNTIME DESTINATION .)
89-
set_source_files_properties("${CMAKE_SOURCE_DIR}/resources/Qldd.icns" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
90-
91-
set_target_properties(Qldd
92-
PROPERTIES
93-
MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME}"
94-
MACOSX_BUNDLE_INFO_STRING "${PROJECT_NAME} Copyright (c) 2023 bas524@yandex.ru"
95-
MACOSX_BUNDLE_ICON_FILE Qldd.icns
96-
MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME}"
97-
MACOSX_BUNDLE_LONG_VERSION_STRING "${PROJECT_VERSION}"
98-
MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}"
99-
MACOSX_BUNDLE_BUNDLE_VERSION "${PROJECT_VERSION}"
100-
MACOSX_BUNDLE_COPYRIGHT "Copyright (c) 2020 bas524@yandex.ru"
101-
)
102-
if (${QtVer} STREQUAL Qt5)
103-
add_custom_command(TARGET Qldd
104-
POST_BUILD
105-
COMMAND plutil -replace NSHighResolutionCapable -bool true Qldd.app/Contents/Info.plist
106-
)
107-
endif()
108-
endif()
109-
110-
# Components:
111-
if(CMAKE_BUILD_TYPE_UPPER MATCHES "^(DEBUG|RELWITHDEBINFO)$")
112-
set(CPACK_STRIP_FILES FALSE)
113-
else()
114-
set(CPACK_STRIP_FILES TRUE)
115-
endif()
116-
117-
install(TARGETS Qldd RUNTIME DESTINATION bin
118-
BUNDLE DESTINATION bin
119-
COMPONENT application)
120-
install(FILES ${CMAKE_SOURCE_DIR}/resources/qldd.desktop DESTINATION share/applications/ COMPONENT application)
121-
install(FILES ${CMAKE_SOURCE_DIR}/resources/Qldd.png DESTINATION share/pixmaps/ COMPONENT application)
122-
install(FILES ${CMAKE_SOURCE_DIR}/nemo/actions/dependency-viewer.nemo_action
123-
DESTINATION share/nemo/actions
124-
COMPONENT nemo-integration)
125-
install(FILES ${CMAKE_SOURCE_DIR}/nautilus-python/extensions/dependency-viewer.py
126-
DESTINATION share/nautilus-python/extensions
127-
COMPONENT nautilus-integration)
128-
12983
set(CPACK_SOURCE_IGNORE_FILES
13084
#svn files
13185
"\\\\.svn/"
@@ -158,40 +112,97 @@ set(CPACK_SOURCE_IGNORE_FILES
158112
"Makefile\\\\.in$"
159113
)
160114

161-
set(PYTHON_NAUTILUS_DEB "python-nautilus")
162-
set(PYTHON_NAUTILUS_RPM "nautilus-python")
163-
if (LSB_RELEASE_ID_SHORT MATCHES "Ubuntu" AND LSB_RELEASE_CODENAME_SHORT MATCHES "jammy")
164-
set(PYTHON_NAUTILUS_DEB "python3-nautilus")
165-
endif()
166-
if (LSB_RELEASE_ID_SHORT MATCHES "Debian" AND LSB_RELEASE_CODENAME_SHORT MATCHES "bullseye")
167-
set(PYTHON_NAUTILUS_DEB "python3-nautilus")
168-
endif()
169-
set(CPACK_PACKAGE_NAME "Qldd")
170-
set(CPACK_PACKAGE_VERSION "${MAJOR}.${MINOR}.${PATCH}")
171-
set(CPACK_PACKAGE_VENDOR "community")
172-
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_PROCESSOR}")
173-
set(CMAKE_PROJECT_HOMEPAGE_URL "https://github.com/bas524/linuxdependency")
174-
set(CPACK_PACKAGE_CONTACT "bas524")
175-
set(CPACK_PACKAGE_DESCRIPTION "DependencyViewer shows all dependecies of a given executable or dynamic library. It is a GUI wrapper for the ldd, file and nm commands")
176-
177-
set(CPACK_DEBIAN_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
178-
set(CPACK_DEBIAN_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION})
179-
set(CPACK_DEBIAN_PACKAGE_SECTION "utils")
180-
set(CPACK_DEBIAN_PACKAGE_MAINTAINER ${CPACK_PACKAGE_MAINTAINER})
181-
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION})
182-
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CMAKE_PROJECT_HOMEPAGE_URL})
183-
set(CPACK_DEBIAN_PACKAGE_LICENSE "Apache-2.0")
184-
set(CPACK_DEBIAN_PACKAGE_DEPENDS "${PYTHON_NAUTILUS_DEB}, binutils, libqt5core5a, libqt5gui5, libqt5widgets5")
185-
186-
set(CPACK_RPM_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
187-
set(CPACK_RPM_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION})
188-
set(CPACK_RPM_PACKAGE_SECTION "net")
189-
set(CPACK_RPM_PACKAGE_MAINTAINER ${CPACK_PACKAGE_MAINTAINER})
190-
set(CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION})
191-
set(CPACK_RPM_PACKAGE_URL ${CMAKE_PROJECT_HOMEPAGE_URL})
192-
set(CPACK_RPM_PACKAGE_LICENSE "Apache-2.0")
193-
set(CPACK_RPM_PACKAGE_REQUIRES "${PYTHON_NAUTILUS_RPM}, binutils, qt5-qtbase")
115+
if(APPLE)
116+
set(CMAKE_MACOSX_BUNDLE ON)
117+
set(CMAKE_MACOSX_RPATH ON)
118+
install(TARGETS Qldd
119+
BUNDLE DESTINATION .
120+
RUNTIME DESTINATION .)
121+
set_source_files_properties("${CMAKE_SOURCE_DIR}/resources/Qldd.icns" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")
194122

123+
set_target_properties(Qldd
124+
PROPERTIES
125+
MACOSX_BUNDLE_BUNDLE_NAME "${PROJECT_NAME}"
126+
MACOSX_BUNDLE_INFO_STRING "${PROJECT_NAME} Copyright (c) 2023 bas524@yandex.ru"
127+
MACOSX_BUNDLE_ICON_FILE Qldd.icns
128+
MACOSX_BUNDLE_GUI_IDENTIFIER "${PROJECT_NAME}"
129+
MACOSX_BUNDLE_LONG_VERSION_STRING "${PROJECT_VERSION}"
130+
MACOSX_BUNDLE_SHORT_VERSION_STRING "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}"
131+
MACOSX_BUNDLE_BUNDLE_VERSION "${PROJECT_VERSION}"
132+
MACOSX_BUNDLE_COPYRIGHT "Copyright (c) 2020 bas524@yandex.ru"
133+
)
134+
if (${QtVer} STREQUAL Qt5)
135+
add_custom_command(TARGET Qldd
136+
POST_BUILD
137+
COMMAND plutil -replace NSHighResolutionCapable -bool true Qldd.app/Contents/Info.plist
138+
)
139+
endif()
140+
else()
141+
142+
# Components:
143+
if(CMAKE_BUILD_TYPE_UPPER MATCHES "^(DEBUG|RELWITHDEBINFO)$")
144+
set(CPACK_STRIP_FILES FALSE)
145+
else()
146+
set(CPACK_STRIP_FILES TRUE)
147+
endif()
148+
149+
install(TARGETS Qldd RUNTIME DESTINATION bin
150+
BUNDLE DESTINATION bin
151+
COMPONENT application)
152+
install(FILES ${CMAKE_SOURCE_DIR}/resources/qldd.desktop DESTINATION share/applications/ COMPONENT application)
153+
install(FILES ${CMAKE_SOURCE_DIR}/resources/Qldd.png DESTINATION share/pixmaps/ COMPONENT application)
154+
install(FILES ${CMAKE_SOURCE_DIR}/nemo/actions/dependency-viewer.nemo_action
155+
DESTINATION share/nemo/actions
156+
COMPONENT nemo-integration)
157+
set(GNOME_SHELL_VERSION_STR "1")
158+
if (NOT APPLE)
159+
execute_process(COMMAND ${CMAKE_COMMAND} -E "gnome-shell --version" OUTPUT_VARIABLE GNOME_SHELL_VERSION_STR)
160+
endif()
161+
string(REGEX MATCH "[0-9]+" GNOME_SHELL_VERSION "${GNOME_SHELL_VERSION_STR}")
162+
message(STATUS "GNOME_SHELL_VERSION is ${GNOME_SHELL_VERSION}")
163+
if (GNOME_SHELL_VERSION LESS 43)
164+
install(FILES ${CMAKE_SOURCE_DIR}/nautilus-python/extensions/dependency-viewer.py
165+
DESTINATION share/nautilus-python/extensions
166+
COMPONENT nautilus-integration)
167+
else()
168+
install(FILES ${CMAKE_SOURCE_DIR}/nautilus-python/extensions/dependency-viewer-43.py
169+
DESTINATION share/nautilus-python/extensions
170+
COMPONENT nautilus-integration)
171+
endif()
172+
set(PYTHON_NAUTILUS_DEB "python-nautilus")
173+
set(PYTHON_NAUTILUS_RPM "nautilus-python")
174+
if (LSB_RELEASE_ID_SHORT MATCHES "Ubuntu" AND LSB_RELEASE_CODENAME_SHORT MATCHES "jammy")
175+
set(PYTHON_NAUTILUS_DEB "python3-nautilus")
176+
endif()
177+
if (LSB_RELEASE_ID_SHORT MATCHES "Debian" AND LSB_RELEASE_CODENAME_SHORT MATCHES "bullseye")
178+
set(PYTHON_NAUTILUS_DEB "python3-nautilus")
179+
endif()
180+
set(CPACK_PACKAGE_NAME "Qldd")
181+
set(CPACK_PACKAGE_VERSION "${MAJOR}.${MINOR}.${PATCH}")
182+
set(CPACK_PACKAGE_VENDOR "community")
183+
set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}-${CMAKE_SYSTEM_PROCESSOR}")
184+
set(CMAKE_PROJECT_HOMEPAGE_URL "https://github.com/bas524/linuxdependency")
185+
set(CPACK_PACKAGE_CONTACT "bas524")
186+
set(CPACK_PACKAGE_DESCRIPTION "DependencyViewer shows all dependecies of a given executable or dynamic library. It is a GUI wrapper for the ldd, file and nm commands")
187+
188+
set(CPACK_DEBIAN_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
189+
set(CPACK_DEBIAN_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION})
190+
set(CPACK_DEBIAN_PACKAGE_SECTION "utils")
191+
set(CPACK_DEBIAN_PACKAGE_MAINTAINER ${CPACK_PACKAGE_MAINTAINER})
192+
set(CPACK_DEBIAN_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION})
193+
set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${CMAKE_PROJECT_HOMEPAGE_URL})
194+
set(CPACK_DEBIAN_PACKAGE_LICENSE "Apache-2.0")
195+
set(CPACK_DEBIAN_PACKAGE_DEPENDS "${PYTHON_NAUTILUS_DEB}, binutils, libqt5core5a, libqt5gui5, libqt5widgets5")
196+
197+
set(CPACK_RPM_PACKAGE_NAME ${CPACK_PACKAGE_NAME})
198+
set(CPACK_RPM_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION})
199+
set(CPACK_RPM_PACKAGE_SECTION "net")
200+
set(CPACK_RPM_PACKAGE_MAINTAINER ${CPACK_PACKAGE_MAINTAINER})
201+
set(CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION})
202+
set(CPACK_RPM_PACKAGE_URL ${CMAKE_PROJECT_HOMEPAGE_URL})
203+
set(CPACK_RPM_PACKAGE_LICENSE "Apache-2.0")
204+
set(CPACK_RPM_PACKAGE_REQUIRES "${PYTHON_NAUTILUS_RPM}, binutils, qt5-qtbase")
205+
endif()
195206
include(CPack)
196207
cpack_add_component(application DISPLAY_NAME "DependencyViewer" REQUIRED)
197208

0 commit comments

Comments
 (0)