Skip to content

Commit d187dd3

Browse files
committed
Flip CMake finds for Qt-based frameworks, to ensure Headers are searched
Search for libraries first, before includes, so any frameworks found can have their Headers subdirectory added to search paths for includes. - Reintroduce qwt and qscintilla2 base library names for searching.
1 parent 95072e9 commit d187dd3

File tree

4 files changed

+57
-34
lines changed

4 files changed

+57
-34
lines changed

cmake/FindQCA.cmake

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -31,16 +31,15 @@ else(QCA_INCLUDE_DIR AND QCA_LIBRARY)
3131
/usr/local/lib
3232
)
3333

34-
if(APPLE)
35-
if(QCA_LIBRARY AND QCA_LIBRARY MATCHES "qca(2)?-qt5\\.framework")
36-
set(QCA_LIBRARY "${QCA_LIBRARY}" CACHE FILEPATH "QCA framework" FORCE)
37-
set(QCA_INCLUDE_DIR "${QCA_LIBRARY}/Headers" CACHE FILEPATH "QCA framework headers" FORCE)
38-
endif()
39-
endif(APPLE)
34+
set(_qca_fw)
35+
if(QCA_LIBRARY MATCHES "/qca.*\\.framework")
36+
string(REGEX REPLACE "^(.*/qca.*\\.framework).*$" "\\1" _qca_fw "${QCA_LIBRARY}")
37+
endif()
4038

4139
find_path(QCA_INCLUDE_DIR
4240
NAMES QtCrypto
4341
PATHS
42+
"${_qca_fw}/Headers"
4443
${LIB_DIR}/include
4544
"$ENV{LIB_DIR}/include"
4645
$ENV{INCLUDE}

cmake/FindQScintilla.cmake

Lines changed: 23 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -24,16 +24,14 @@ IF(EXISTS QSCINTILLA_VERSION_STR)
2424
SET(QSCINTILLA_FOUND TRUE)
2525
ELSE(EXISTS QSCINTILLA_VERSION_STR)
2626

27-
FIND_PATH(QSCINTILLA_INCLUDE_DIR
28-
NAMES Qsci/qsciglobal.h
29-
PATHS
30-
${Qt5Core_INCLUDE_DIRS}
31-
"${QT_INCLUDE_DIR}"
32-
/usr/local/include
33-
/usr/include
34-
)
35-
36-
set(QSCINTILLA_LIBRARY_NAMES qscintilla2-qt5 libqt5scintilla2 libqscintilla2-qt5 qt5scintilla2 libqscintilla2-qt5.dylib)
27+
set(QSCINTILLA_LIBRARY_NAMES
28+
qscintilla2-qt5
29+
libqt5scintilla2
30+
libqscintilla2-qt5
31+
qt5scintilla2
32+
libqscintilla2-qt5.dylib
33+
qscintilla2
34+
)
3735

3836
find_library(QSCINTILLA_LIBRARY
3937
NAMES ${QSCINTILLA_LIBRARY_NAMES}
@@ -43,6 +41,21 @@ ELSE(EXISTS QSCINTILLA_VERSION_STR)
4341
/usr/lib
4442
)
4543

44+
set(_qsci_fw)
45+
if(QSCINTILLA_LIBRARY MATCHES "/qscintilla.*\\.framework")
46+
string(REGEX REPLACE "^(.*/qscintilla.*\\.framework).*$" "\\1" _qsci_fw "${QSCINTILLA_LIBRARY}")
47+
endif()
48+
49+
FIND_PATH(QSCINTILLA_INCLUDE_DIR
50+
NAMES Qsci/qsciglobal.h
51+
PATHS
52+
"${_qsci_fw}/Headers"
53+
${Qt5Core_INCLUDE_DIRS}
54+
"${QT_INCLUDE_DIR}"
55+
/usr/local/include
56+
/usr/include
57+
)
58+
4659
IF(QSCINTILLA_LIBRARY AND QSCINTILLA_INCLUDE_DIR)
4760
SET(QSCINTILLA_FOUND TRUE)
4861

cmake/FindQwt.cmake

Lines changed: 15 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,7 @@
1212
#
1313

1414

15-
FIND_PATH(QWT_INCLUDE_DIR NAMES qwt.h PATHS
16-
/usr/include
17-
/usr/local/include
18-
"$ENV{LIB_DIR}/include"
19-
"$ENV{INCLUDE}"
20-
PATH_SUFFIXES qwt-qt4 qwt qwt5 qwt6
21-
)
22-
23-
set(QWT_LIBRARY_NAMES qwt-qt5 qwt6-qt5)
15+
set(QWT_LIBRARY_NAMES qwt-qt5 qwt6-qt5 qwt)
2416

2517
find_library(QWT_LIBRARY
2618
NAMES ${QWT_LIBRARY_NAMES}
@@ -31,6 +23,20 @@ find_library(QWT_LIBRARY
3123
"$ENV{LIB}"
3224
)
3325

26+
set(_qwt_fw)
27+
if(QWT_LIBRARY MATCHES "/qwt.*\\.framework")
28+
string(REGEX REPLACE "^(.*/qwt.*\\.framework).*$" "\\1" _qwt_fw "${QWT_LIBRARY}")
29+
endif()
30+
31+
FIND_PATH(QWT_INCLUDE_DIR NAMES qwt.h PATHS
32+
"${_qwt_fw}/Headers"
33+
/usr/include
34+
/usr/local/include
35+
"$ENV{LIB_DIR}/include"
36+
"$ENV{INCLUDE}"
37+
PATH_SUFFIXES qwt-qt4 qwt qwt5 qwt6
38+
)
39+
3440
IF (QWT_INCLUDE_DIR AND QWT_LIBRARY)
3541
SET(QWT_FOUND TRUE)
3642
ENDIF (QWT_INCLUDE_DIR AND QWT_LIBRARY)

cmake/FindQwtPolar.cmake

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -12,22 +12,27 @@
1212
# QWTPOLAR_INCLUDE_DIR = where to find headers
1313
#
1414

15-
16-
FIND_PATH(QWTPOLAR_INCLUDE_DIR NAMES qwt_polar.h PATHS
17-
/usr/include
18-
/usr/local/include
19-
"$ENV{LIB_DIR}/include"
20-
"$ENV{INCLUDE}"
21-
PATH_SUFFIXES qwtpolar qwt
22-
)
23-
2415
FIND_LIBRARY(QWTPOLAR_LIBRARY NAMES qwtpolar PATHS
2516
/usr/lib
2617
/usr/local/lib
2718
"$ENV{LIB_DIR}/lib"
2819
"$ENV{LIB}/lib"
2920
)
3021

22+
SET(_qwtpolar_fw)
23+
IF (QWTPOLAR_LIBRARY MATCHES "/qwtpolar.*\\.framework")
24+
STRING(REGEX REPLACE "^(.*/qwtpolar.*\\.framework).*$" "\\1" _qwtpolar_fw "${QWTPOLAR_LIBRARY}")
25+
ENDIF ()
26+
27+
FIND_PATH(QWTPOLAR_INCLUDE_DIR NAMES qwt_polar.h PATHS
28+
"${_qwtpolar_fw}/Headers"
29+
/usr/include
30+
/usr/local/include
31+
"$ENV{LIB_DIR}/include"
32+
"$ENV{INCLUDE}"
33+
PATH_SUFFIXES qwtpolar qwt
34+
)
35+
3136
IF (QWTPOLAR_INCLUDE_DIR AND QWTPOLAR_LIBRARY)
3237
SET(QWTPOLAR_FOUND TRUE)
3338
ENDIF (QWTPOLAR_INCLUDE_DIR AND QWTPOLAR_LIBRARY)

0 commit comments

Comments
 (0)