]> git.saurik.com Git - apple/javascriptcore.git/blob - JavaScriptCore.pri
JavaScriptCore-721.26.tar.gz
[apple/javascriptcore.git] / JavaScriptCore.pri
1 # JavaScriptCore - Qt4 build info
2 VPATH += $$PWD
3 CONFIG(debug, debug|release) {
4 # Output in JavaScriptCore/<config>
5 JAVASCRIPTCORE_DESTDIR = debug
6 # Use a config-specific target to prevent parallel builds file clashes on Mac
7 JAVASCRIPTCORE_TARGET = jscored
8 } else {
9 JAVASCRIPTCORE_DESTDIR = release
10 JAVASCRIPTCORE_TARGET = jscore
11 }
12 CONFIG(standalone_package) {
13 isEmpty(JSC_GENERATED_SOURCES_DIR):JSC_GENERATED_SOURCES_DIR = $$PWD/generated
14 } else {
15 isEmpty(JSC_GENERATED_SOURCES_DIR):JSC_GENERATED_SOURCES_DIR = generated
16 }
17
18 CONFIG(standalone_package): DEFINES *= NDEBUG
19
20 symbian: {
21 # Need to guarantee this comes before system includes of /epoc32/include
22 MMP_RULES += "USERINCLUDE ../JavaScriptCore/profiler"
23 LIBS += -lhal
24 # For hal.h
25 INCLUDEPATH *= $$MW_LAYER_SYSTEMINCLUDE
26 }
27
28 INCLUDEPATH = \
29 $$PWD \
30 $$PWD/.. \
31 $$PWD/assembler \
32 $$PWD/bytecode \
33 $$PWD/bytecompiler \
34 $$PWD/debugger \
35 $$PWD/interpreter \
36 $$PWD/jit \
37 $$PWD/parser \
38 $$PWD/pcre \
39 $$PWD/profiler \
40 $$PWD/runtime \
41 $$PWD/wtf \
42 $$PWD/wtf/symbian \
43 $$PWD/wtf/unicode \
44 $$PWD/yarr \
45 $$PWD/API \
46 $$PWD/ForwardingHeaders \
47 $$JSC_GENERATED_SOURCES_DIR \
48 $$INCLUDEPATH
49
50 win32-*: DEFINES += _HAS_TR1=0
51
52 DEFINES += BUILDING_QT__ BUILDING_JavaScriptCore BUILDING_WTF
53
54 contains(JAVASCRIPTCORE_JIT,yes) {
55 DEFINES+=ENABLE_JIT=1
56 DEFINES+=ENABLE_YARR_JIT=1
57 DEFINES+=ENABLE_YARR=1
58 }
59 contains(JAVASCRIPTCORE_JIT,no) {
60 DEFINES+=ENABLE_JIT=0
61 DEFINES+=ENABLE_YARR_JIT=0
62 DEFINES+=ENABLE_YARR=0
63 }
64
65 wince* {
66 INCLUDEPATH += $$QT_SOURCE_TREE/src/3rdparty/ce-compat
67 DEFINES += WINCEBASIC
68
69 INCLUDEPATH += $$PWD/../JavaScriptCore/os-wince
70 INCLUDEPATH += $$PWD/../JavaScriptCore/os-win32
71 }
72
73
74 defineTest(addJavaScriptCoreLib) {
75 # Argument is the relative path to JavaScriptCore.pro's qmake output
76 pathToJavaScriptCoreOutput = $$ARGS/$$JAVASCRIPTCORE_DESTDIR
77
78 win32-msvc*|wince* {
79 LIBS += -L$$pathToJavaScriptCoreOutput
80 LIBS += -l$$JAVASCRIPTCORE_TARGET
81 POST_TARGETDEPS += $${pathToJavaScriptCoreOutput}$${QMAKE_DIR_SEP}$${JAVASCRIPTCORE_TARGET}.lib
82 } else:symbian {
83 LIBS += -l$${JAVASCRIPTCORE_TARGET}.lib
84 # The default symbian build system does not use library paths at all. However when building with
85 # qmake's symbian makespec that uses Makefiles
86 QMAKE_LIBDIR += $$pathToJavaScriptCoreOutput
87 POST_TARGETDEPS += $${pathToJavaScriptCoreOutput}$${QMAKE_DIR_SEP}$${JAVASCRIPTCORE_TARGET}.lib
88 } else {
89 # Make sure jscore will be early in the list of libraries to workaround a bug in MinGW
90 # that can't resolve symbols from QtCore if libjscore comes after.
91 QMAKE_LIBDIR = $$pathToJavaScriptCoreOutput $$QMAKE_LIBDIR
92 LIBS += -l$$JAVASCRIPTCORE_TARGET
93 POST_TARGETDEPS += $${pathToJavaScriptCoreOutput}$${QMAKE_DIR_SEP}lib$${JAVASCRIPTCORE_TARGET}.a
94 }
95
96 win32-* {
97 LIBS += -lwinmm
98 }
99
100 # The following line is to prevent qmake from adding jscore to libQtWebKit's prl dependencies.
101 # The compromise we have to accept by disabling explicitlib is to drop support to link QtWebKit and QtScript
102 # statically in applications (which isn't used often because, among other things, of licensing obstacles).
103 CONFIG -= explicitlib
104
105 export(QMAKE_LIBDIR)
106 export(LIBS)
107 export(POST_TARGETDEPS)
108 export(CONFIG)
109
110 return(true)
111 }