@@ -1,115 +1,116 | |||||
1 |
|
1 | |||
2 | LIBRARY_NAME = QtCommercialChart |
|
2 | LIBRARY_NAME = QtCommercialChart | |
3 |
|
3 | |||
4 | ##################### SHADOW CONFIG ################################################# |
|
4 | ##################### SHADOW CONFIG ################################################# | |
5 |
|
5 | |||
6 | !contains($${PWD}, $${OUT_PWD}){ |
|
6 | !contains($${PWD}, $${OUT_PWD}){ | |
7 | search = "$$PWD:::" |
|
7 | search = "$$PWD:::" | |
8 | temp = $$split(search,"/") |
|
8 | temp = $$split(search,"/") | |
9 | temp = $$last(temp) |
|
9 | temp = $$last(temp) | |
10 | path = $$replace(search,$$temp,'') |
|
10 | path = $$replace(search,$$temp,'') | |
11 | temp = $$split(OUT_PWD,$$path) |
|
11 | temp = $$split(OUT_PWD,$$path) | |
12 | temp = $$split(temp,'/') |
|
12 | temp = $$split(temp,'/') | |
13 | temp = $$first(temp) |
|
13 | temp = $$first(temp) | |
14 | path = "$${path}$${temp}" |
|
14 | path = "$${path}$${temp}" | |
15 | SHADOW=$$path |
|
15 | SHADOW=$$path | |
16 | }else{ |
|
16 | }else{ | |
17 | SHADOW=$$PWD |
|
17 | SHADOW=$$PWD | |
18 | CONFIG-=development_build |
|
18 | CONFIG-=development_build | |
19 | } |
|
19 | } | |
20 |
|
20 | |||
21 | ##################### BUILD PATHS ################################################## |
|
21 | ##################### BUILD PATHS ################################################## | |
22 |
|
22 | |||
23 | CHART_BUILD_PUBLIC_HEADER_DIR = $$SHADOW/include |
|
23 | CHART_BUILD_PUBLIC_HEADER_DIR = $$SHADOW/include | |
24 | CHART_BUILD_PRIVATE_HEADER_DIR = $$CHART_BUILD_PUBLIC_HEADER_DIR/private |
|
24 | CHART_BUILD_PRIVATE_HEADER_DIR = $$CHART_BUILD_PUBLIC_HEADER_DIR/private | |
25 | CHART_BUILD_LIB_DIR = $$SHADOW/lib |
|
25 | CHART_BUILD_LIB_DIR = $$SHADOW/lib | |
26 | CHART_BUILD_DIR = $$SHADOW/build |
|
26 | CHART_BUILD_DIR = $$SHADOW/build | |
27 | CHART_BUILD_BIN_DIR = $$SHADOW/bin |
|
27 | CHART_BUILD_BIN_DIR = $$SHADOW/bin | |
28 | CHART_BUILD_PLUGIN_DIR = $$CHART_BUILD_BIN_DIR/QtCommercial/Chart |
|
28 | CHART_BUILD_PLUGIN_DIR = $$CHART_BUILD_BIN_DIR/QtCommercial/Chart | |
29 | CHART_BUILD_DOC_DIR = $$SHADOW/doc |
|
29 | CHART_BUILD_DOC_DIR = $$SHADOW/doc | |
30 |
|
30 | |||
31 | win32:{ |
|
31 | win32:{ | |
32 | CHART_BUILD_PUBLIC_HEADER_DIR = $$replace(CHART_BUILD_PUBLIC_HEADER_DIR, "/","\\") |
|
32 | CHART_BUILD_PUBLIC_HEADER_DIR = $$replace(CHART_BUILD_PUBLIC_HEADER_DIR, "/","\\") | |
33 | CHART_BUILD_PRIVATE_HEADER_DIR = $$replace(CHART_BUILD_PRIVATE_HEADER_DIR, "/","\\") |
|
33 | CHART_BUILD_PRIVATE_HEADER_DIR = $$replace(CHART_BUILD_PRIVATE_HEADER_DIR, "/","\\") | |
34 | CHART_BUILD_BUILD_DIR = $$replace(CHART_BUILD_BUILD_DIR, "/","\\") |
|
34 | CHART_BUILD_BUILD_DIR = $$replace(CHART_BUILD_BUILD_DIR, "/","\\") | |
35 | CHART_BUILD_BIN_DIR = $$replace(CHART_BUILD_BIN_DIR, "/","\\") |
|
35 | CHART_BUILD_BIN_DIR = $$replace(CHART_BUILD_BIN_DIR, "/","\\") | |
36 | CHART_BUILD_PLUGIN_DIR = $$replace(CHART_BUILD_PLUGIN_DIR, "/","\\") |
|
36 | CHART_BUILD_PLUGIN_DIR = $$replace(CHART_BUILD_PLUGIN_DIR, "/","\\") | |
37 | CHART_BUILD_DOC_DIR = $$replace(CHART_BUILD_DOC_DIR, "/","\\") |
|
37 | CHART_BUILD_DOC_DIR = $$replace(CHART_BUILD_DOC_DIR, "/","\\") | |
38 | CHART_BUILD_LIB_DIR = $$CHART_BUILD_BIN_DIR |
|
38 | CHART_BUILD_LIB_DIR = $$CHART_BUILD_BIN_DIR | |
39 | } |
|
39 | } | |
40 |
|
40 | |||
41 | mac: { |
|
41 | mac: { | |
42 | # TODO: The following qmake flags are a work-around to make QtCommercial Charts compile on |
|
42 | # TODO: The following qmake flags are a work-around to make QtCommercial Charts compile on | |
43 | # QtCommercial 4.8. On the other hand Charts builds successfully with Qt open source 4.8 |
|
43 | # QtCommercial 4.8. On the other hand Charts builds successfully with Qt open source 4.8 | |
44 | # without these definitions, so this is probably a configuration issue on QtCommercial 4.8; |
|
44 | # without these definitions, so this is probably a configuration issue on QtCommercial 4.8; | |
45 | # it should probably define the minimum OSX version to be 10.5... |
|
45 | # it should probably define the minimum OSX version to be 10.5... | |
46 | QMAKE_CXXFLAGS *= -mmacosx-version-min=10.5 |
|
46 | QMAKE_CXXFLAGS *= -mmacosx-version-min=10.5 | |
47 | QMAKE_LFLAGS *= -mmacosx-version-min=10.5 |
|
47 | QMAKE_LFLAGS *= -mmacosx-version-min=10.5 | |
48 | } |
|
48 | } | |
49 |
|
49 | |||
50 | ##################### DEVELOPMENT BUILD ################################################### |
|
50 | ##################### DEVELOPMENT BUILD ################################################### | |
51 |
|
51 | |||
52 | development_build: { |
|
52 | development_build: { | |
53 | DEFINES+=DEVELOPMENT_BUILD |
|
53 | DEFINES+=DEVELOPMENT_BUILD | |
54 | CONFIG+=debug_and_release |
|
54 | CONFIG+=debug_and_release | |
55 | } |
|
55 | } | |
56 |
|
56 | |||
57 |
|
57 | |||
58 | ##################### BUILD CONFIG ######################################################## |
|
58 | ##################### BUILD CONFIG ######################################################## | |
59 |
|
59 | |||
60 | !system_build:{ |
|
60 | !system_build:{ | |
61 |
|
61 | |||
62 | INCLUDEPATH += $$CHART_BUILD_PUBLIC_HEADER_DIR |
|
62 | INCLUDEPATH += $$CHART_BUILD_PUBLIC_HEADER_DIR | |
63 |
|
63 | |||
64 | !win32: { |
|
64 | !win32: { | |
65 | LIBS += -L $$CHART_BUILD_LIB_DIR -Wl,-rpath,$$CHART_BUILD_LIB_DIR |
|
65 | LIBS += -L $$CHART_BUILD_LIB_DIR -Wl,-rpath,$$CHART_BUILD_LIB_DIR | |
66 | }else{ |
|
66 | }else{ | |
67 | win32-msvc*: { |
|
67 | win32-msvc*: { | |
68 | # hack fix for error: |
|
68 | # hack fix for error: | |
69 | # "LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'" |
|
69 | # "LINK : fatal error LNK1146: no argument specified with option '/LIBPATH:'" | |
70 | QMAKE_LIBDIR += $$CHART_BUILD_LIB_DIR |
|
70 | QMAKE_LIBDIR += $$CHART_BUILD_LIB_DIR | |
71 | }else{ |
|
71 | }else{ | |
72 | LIBS += -L $$CHART_BUILD_LIB_DIR |
|
72 | LIBS += -L $$CHART_BUILD_LIB_DIR | |
73 | } |
|
73 | } | |
74 | } |
|
74 | } | |
75 |
|
75 | |||
76 | CONFIG(debug, debug|release) { |
|
76 | CONFIG(debug, debug|release) { | |
77 |
mac: LIBRARY |
|
77 | mac: LIBRARY = $$join(LIBRARY_NAME,,,_debug) | |
78 |
win32: LIBRARY |
|
78 | win32: LIBRARY = $$join(LIBRARY_NAME,,,d) | |
|
79 | linux: LIBRARY = $$LIBRARY_NAME | |||
79 | } |
|
80 | } | |
80 |
|
81 | |||
81 |
LIBS += -l$$LIBRARY |
|
82 | LIBS += -l$$LIBRARY | |
82 |
|
83 | |||
83 |
|
84 | |||
84 | mac: { |
|
85 | mac: { | |
85 | # This is a hack to make binaries to use the internal version of the QtCommercial Charts library on OSX |
|
86 | # This is a hack to make binaries to use the internal version of the QtCommercial Charts library on OSX | |
86 | CHARTS_LIB_NAME = libQtCommercialChart.1.dylib |
|
87 | CHARTS_LIB_NAME = libQtCommercialChart.1.dylib | |
87 | CONFIG(debug, debug|release) { |
|
88 | CONFIG(debug, debug|release) { | |
88 | CHARTS_LIB_NAME = libQtCommercialChartd.1.dylib |
|
89 | CHARTS_LIB_NAME = libQtCommercialChartd.1.dylib | |
89 | } |
|
90 | } | |
90 | BIN_TARGET_PATH = "" |
|
91 | BIN_TARGET_PATH = "" | |
91 | exists ($$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET) { |
|
92 | exists ($$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET) { | |
92 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET |
|
93 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/"$$TARGET".app/Contents/MacOS/"$$TARGET | |
93 | } |
|
94 | } | |
94 | exists ($$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET) { |
|
95 | exists ($$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET) { | |
95 | # Executable in test folder |
|
96 | # Executable in test folder | |
96 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET |
|
97 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/"$$TARGET".app/Contents/MacOS/"$$TARGET | |
97 | } |
|
98 | } | |
98 | exists ($$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET) { |
|
99 | exists ($$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET) { | |
99 | # Executable in test folder with custom target "tst_NNN" |
|
100 | # Executable in test folder with custom target "tst_NNN" | |
100 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET |
|
101 | BIN_TARGET_PATH = $$CHART_BUILD_BIN_DIR"/test/tst_"$$TARGET".app/Contents/MacOS/tst_"$$TARGET | |
101 | } |
|
102 | } | |
102 | exists($$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib") { |
|
103 | exists($$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib") { | |
103 | # Plugin |
|
104 | # Plugin | |
104 | BIN_TARGET_PATH = $$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib" |
|
105 | BIN_TARGET_PATH = $$CHART_BUILD_PLUGIN_DIR"/lib"$$TARGET".dylib" | |
105 | } |
|
106 | } | |
106 | !isEmpty (BIN_TARGET_PATH) { |
|
107 | !isEmpty (BIN_TARGET_PATH) { | |
107 | QMAKE_POST_LINK += install_name_tool -change $$CHARTS_LIB_NAME $$CHART_BUILD_LIB_DIR"/"$$CHARTS_LIB_NAME $$BIN_TARGET_PATH |
|
108 | QMAKE_POST_LINK += install_name_tool -change $$CHARTS_LIB_NAME $$CHART_BUILD_LIB_DIR"/"$$CHARTS_LIB_NAME $$BIN_TARGET_PATH | |
108 | } |
|
109 | } | |
109 | } |
|
110 | } | |
110 |
|
111 | |||
111 | }else { |
|
112 | }else { | |
112 |
|
113 | |||
113 | CONFIG += qtcommercialchart |
|
114 | CONFIG += qtcommercialchart | |
114 |
|
115 | |||
115 | } No newline at end of file |
|
116 | } |
General Comments 0
You need to be logged in to leave comments.
Login now