##// END OF EJS Templates
Fixed integrated build on OSX
Tero Ahola -
r721:a5d0004908a0
parent child
Show More
@@ -1,62 +1,75
1 integrated_build:{
1 integrated_build:{
2 INCLUDEPATH += $$CHART_BUILD_PUBLIC_HEADER_DIR
2 INCLUDEPATH += $$CHART_BUILD_PUBLIC_HEADER_DIR
3
3
4 !win32: {
4 !win32: {
5 LIBS += -L $$CHART_BUILD_LIB_DIR -Wl,-rpath,$$CHART_BUILD_LIB_DIR
5 LIBS += -L $$CHART_BUILD_LIB_DIR -Wl,-rpath,$$CHART_BUILD_LIB_DIR
6 }else{
6 }else{
7 win32-msvc*: {
7 win32-msvc*: {
8 # hack fix for error:
8 # hack fix for error:
9 # "LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'"
9 # "LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'"
10 QMAKE_LIBDIR += $$CHART_BUILD_LIB_DIR
10 QMAKE_LIBDIR += $$CHART_BUILD_LIB_DIR
11 }else{
11 }else{
12 LIBS += -L $$CHART_BUILD_LIB_DIR
12 LIBS += -L $$CHART_BUILD_LIB_DIR
13 }
13 }
14 }
14 }
15
15
16 CONFIG(debug, debug|release) {
16 CONFIG(debug, debug|release) {
17 LIBS += -lQtCommercialChartd
17 LIBS += -lQtCommercialChartd
18 #this is ugly hack to work around missing rpath, it simply copies lib
18 #this is ugly hack to work around missing rpath, it simply copies lib
19 win32:{
19 win32:{
20 copylib.target = $$CHART_BUILD_BIN_DIR/QtCommercialChartd.dll
20 copylib.target = $$CHART_BUILD_BIN_DIR/QtCommercialChartd.dll
21 copylib.commands = $$QMAKE_COPY $$CHART_BUILD_LIB_DIR\\QtCommercialChartd.dll $$CHART_BUILD_BIN_DIR
21 copylib.commands = $$QMAKE_COPY $$CHART_BUILD_LIB_DIR\\QtCommercialChartd.dll $$CHART_BUILD_BIN_DIR
22 copylib.depends = $$CHART_BUILD_LIB_DIR/QtCommercialChartd.dll
22 copylib.depends = $$CHART_BUILD_LIB_DIR/QtCommercialChartd.dll
23 PRE_TARGETDEPS += $$CHART_BUILD_BIN_DIR/QtCommercialChartd.dll
23 PRE_TARGETDEPS += $$CHART_BUILD_BIN_DIR/QtCommercialChartd.dll
24 QMAKE_EXTRA_TARGETS +=copylib
24 QMAKE_EXTRA_TARGETS +=copylib
25 }
25 }
26 } else {
26 } else {
27 LIBS += -lQtCommercialChart
27 LIBS += -lQtCommercialChart
28
28
29 #this is ugly hack to work around missing rpath, it simply copies lib
29 #this is ugly hack to work around missing rpath, it simply copies lib
30 win32: {
30 win32: {
31 copylib.target = $$CHART_BUILD_BIN_DIR/QtCommercialChart
31 copylib.target = $$CHART_BUILD_BIN_DIR/QtCommercialChart
32 copylib.commands = $$QMAKE_COPY $$CHART_BUILD_LIB_DIR\\QtCommercialChart.dll $$CHART_BUILD_BIN_DIR
32 copylib.commands = $$QMAKE_COPY $$CHART_BUILD_LIB_DIR\\QtCommercialChart.dll $$CHART_BUILD_BIN_DIR
33 copylib.depends = $$CHART_BUILD_LIB_DIR/QtCommercialChart.dll
33 copylib.depends = $$CHART_BUILD_LIB_DIR/QtCommercialChart.dll
34 PRE_TARGETDEPS += $$CHART_BUILD_BIN_DIR/QtCommercialChart
34 PRE_TARGETDEPS += $$CHART_BUILD_BIN_DIR/QtCommercialChart
35 QMAKE_EXTRA_TARGETS +=copylib
35 QMAKE_EXTRA_TARGETS +=copylib
36 }
36 }
37 }
37 }
38
38
39 mac: {
39 mac: {
40 # This is a hack to make binaries to use the internal version of the QtCommercial Charts library on OSX
40 CHARTS_LIB_NAME = libQtCommercialChart.1.dylib
41 CHARTS_LIB_NAME = libQtCommercialChart.1.dylib
41 CONFIG(debug, debug|release) {
42 CONFIG(debug, debug|release) {
42 CHARTS_LIB_NAME = libQtCommercialChartd.1.dylib
43 CHARTS_LIB_NAME = libQtCommercialChartd.1.dylib
43 }
44 }
44
45 TARGET_PATH = ""
45 # This is a hack to make binaries to use the internal version of the QtCommercial Charts library on OSX
46 exists ($$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET) {
46 exists($$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET) {
47 TARGET_PATH = $$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET
47 QMAKE_POST_LINK += install_name_tool -change $$CHARTS_LIB_NAME $$CHART_BUILD_LIB_DIR"/"$$CHARTS_LIB_NAME $$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET
48 }
49 exists ($$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET) {
50 # Executable in test folder
51 TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET
52 }
53 exists ($$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET) {
54 # Executable in test folder with custom target "tst_NNN"
55 TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET
56 }
57 exists($$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib") {
58 # Plugin
59 TARGET_PATH = $$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib"
60 }
61 !isEmpty (TARGET_PATH) {
62 QMAKE_POST_LINK += install_name_tool -change $$CHARTS_LIB_NAME $$CHART_BUILD_LIB_DIR"/"$$CHARTS_LIB_NAME $$TARGET_PATH
48 #message($$QMAKE_POST_LINK)
63 #message($$QMAKE_POST_LINK)
49 }
64 }
50
65
51 # Hack to make qml plugins available as internal build versions and to make the plugins use
66 # Hack to make qml plugins available as internal build versions
52 # the internal version of the QtCommercial Charts library on OSX
53 exists($$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib") {
67 exists($$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib") {
54 QMAKE_POST_LINK += "$$QMAKE_COPY qmldir $$CHART_BUILD_PLUGIN_DIR &"
68 QMAKE_POST_LINK += "& $$QMAKE_COPY qmldir $$CHART_BUILD_PLUGIN_DIR"
55 QMAKE_POST_LINK += "install_name_tool -change $$CHARTS_LIB_NAME $$CHART_BUILD_LIB_DIR"/"$$CHARTS_LIB_NAME $$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib""
69 #message($$QMAKE_POST_LINK)
56 # message($$QMAKE_POST_LINK)
57 }
70 }
58 }
71 }
59
72
60 } else {
73 } else {
61 CONFIG += qtcommercialchart
74 CONFIG += qtcommercialchart
62 }
75 }
@@ -1,19 +1,18
1 !include( ../test.pri ) {
1 !include( ../test.pri ) {
2 error( "Couldn't find the test.pri file!" )
2 error( "Couldn't find the test.pri file!" )
3 }
3 }
4
4
5 TARGET = chartwidgettest
6 TEMPLATE = app
5 TEMPLATE = app
7
6
8 QT += core gui
7 QT += core gui
9 contains(QT_MAJOR_VERSION, 5) {
8 contains(QT_MAJOR_VERSION, 5) {
10 QT += widgets
9 QT += widgets
11 }
10 }
12
11
13 SOURCES += main.cpp \
12 SOURCES += main.cpp \
14 mainwidget.cpp \
13 mainwidget.cpp \
15 dataseriedialog.cpp
14 dataseriedialog.cpp
16
15
17 HEADERS += \
16 HEADERS += \
18 mainwidget.h \
17 mainwidget.h \
19 dataseriedialog.h
18 dataseriedialog.h
General Comments 0
You need to be logged in to leave comments. Login now