source: trunk/qmake/Makefile.os2-g++@ 910

Last change on this file since 910 was 847, checked in by Dmitry A. Kuminov, 15 years ago

qmake: Fixed the OS/2 build and the GNUMAKE generator.

File size: 5.5 KB
RevLine 
[16]1ifeq "$(SOURCE_PATH)" ""
2SOURCE_PATH = ..
3endif
4
[154]5# CMD.EXE version
[16]6
7ifeq "$(BUILD_PATH)" ""
8BUILD_PATH = ..
9endif
10
11#
12# specific stuff for GNU make
13#
14CXX = g++
[390]15CFLAGS = -O -s -Zomf \
[16]16 -I. -Igenerators -Igenerators/unix \
[566]17 -Igenerators/win32 -Igenerators/mac \
18 -Igenerators/symbian -Igenerators/os2 \
[16]19 -I$(BUILD_PATH)/include -I$(BUILD_PATH)/include/QtCore \
20 -I$(SOURCE_PATH)/include -I$(SOURCE_PATH)/include/QtCore \
21 -I$(BUILD_PATH)/src/corelib/global \
[566]22 -I$(BUILD_PATH)/src/corelib/xml \
[390]23 -I$(SOURCE_PATH)/mkspecs/os2-g++ \
[769]24 -I$(SOURCE_PATH)/tools/shared \
[16]25 -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_PCRE \
[390]26 -DQT_NODLL -DQT_NO_STL -DQT_NO_COMPRESS -DHAVE_QCONFIG_CPP \
[566]27 -DQT_BUILD_QMAKE -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -DQT_NO_DATASTREAM \
28 -DQT_BOOTSTRAPPED
[16]29CXXFLAGS = $(CFLAGS)
[154]30ifeq "$(EMXOMFLD_TYPE)" "WLINK"
31LFLAGS = -s -Zomf -Zstack 0x2000 -Zlinker DISABLE\ 1121
32else
[16]33LFLAGS = -s -Zomf -Zstack 0x2000 -Zlinker /PM:VIO -Zlinker /EXEPACK:2
[154]34endif
[16]35LIBS = -lregistry.dll
[390]36LINK = g++ $(LFLAGS)
[16]37ADDCLEAN =
38
39ifdef QMAKE_OPENSOURCE_EDITION
[390]40CFLAGS += -DQMAKE_OPENSOURCE_EDITION
[16]41endif
42
[513]43# make sure the output dir matches the one in qmake.pro
44OBJECTS_DIR = release-shared
[16]45
[566]46# qmake code (taken from qmake.pri)
[16]47
[390]48SOURCES = \
[566]49 project.cpp \
[390]50 property.cpp \
51 main.cpp \
[566]52 generators/makefile.cpp \
53 generators/unix/unixmake2.cpp \
54 generators/unix/unixmake.cpp \
[390]55 meta.cpp \
56 option.cpp \
[566]57 generators/win32/winmakefile.cpp \
58 generators/win32/mingw_make.cpp \
59 generators/makefiledeps.cpp \
60 generators/metamakefile.cpp \
61 generators/mac/pbuilder_pbx.cpp \
62 generators/xmloutput.cpp \
63 generators/win32/borland_bmake.cpp \
64 generators/win32/msvc_nmake.cpp \
65 generators/projectgenerator.cpp \
66 generators/win32/msvc_vcproj.cpp \
[847]67 generators/win32/msvc_vcxproj.cpp \
[566]68 generators/win32/msvc_objectmodel.cpp \
[847]69 generators/win32/msbuild_objectmodel.cpp \
[566]70 generators/symbian/symmake.cpp \
71 generators/symbian/symmake_abld.cpp \
72 generators/symbian/symmake_sbsv2.cpp \
73 generators/symbian/initprojectdeploy_symbian.cpp \
[847]74 generators/symbian/symbiancommon.cpp \
[566]75 generators/os2/gnumake.cpp
[16]76
[566]77# Qt code (taken from qmake.pri)
[390]78
79SOURCES += \
[566]80 $(SOURCE_PATH)/src/corelib/tools/qbitarray.cpp \
81 $(SOURCE_PATH)/src/corelib/io/qbuffer.cpp \
82 $(SOURCE_PATH)/src/corelib/tools/qbytearray.cpp \
83 $(SOURCE_PATH)/src/corelib/tools/qbytearraymatcher.cpp \
84 $(SOURCE_PATH)/src/corelib/tools/qcryptographichash.cpp \
85 $(SOURCE_PATH)/src/corelib/tools/qdatetime.cpp \
86 $(SOURCE_PATH)/src/corelib/io/qdir.cpp \
87 $(SOURCE_PATH)/src/corelib/io/qdiriterator.cpp \
88 $(SOURCE_PATH)/src/corelib/io/qfile.cpp \
89 $(SOURCE_PATH)/src/corelib/io/qabstractfileengine.cpp \
90 $(SOURCE_PATH)/src/corelib/io/qfileinfo.cpp \
91 $(SOURCE_PATH)/src/corelib/io/qfsfileengine.cpp \
92 $(SOURCE_PATH)/src/corelib/io/qfsfileengine_iterator.cpp \
93 $(SOURCE_PATH)/src/corelib/global/qglobal.cpp \
94 $(SOURCE_PATH)/src/corelib/global/qnumeric.cpp \
95 $(SOURCE_PATH)/src/corelib/tools/qhash.cpp \
96 $(SOURCE_PATH)/src/corelib/io/qiodevice.cpp \
97 $(SOURCE_PATH)/src/corelib/tools/qlist.cpp \
98 $(SOURCE_PATH)/src/corelib/tools/qlinkedlist.cpp \
99 $(SOURCE_PATH)/src/corelib/tools/qlocale.cpp \
100 $(SOURCE_PATH)/src/corelib/global/qmalloc.cpp \
101 $(SOURCE_PATH)/src/corelib/tools/qmap.cpp \
102 $(SOURCE_PATH)/src/corelib/kernel/qmetatype.cpp \
103 $(SOURCE_PATH)/src/corelib/tools/qregexp.cpp \
104 $(SOURCE_PATH)/src/corelib/codecs/qtextcodec.cpp \
105 $(SOURCE_PATH)/src/corelib/codecs/qutfcodec.cpp \
106 $(SOURCE_PATH)/src/corelib/tools/qstring.cpp \
107 $(SOURCE_PATH)/src/corelib/tools/qstringlist.cpp \
108 $(SOURCE_PATH)/src/corelib/io/qtemporaryfile.cpp \
109 $(SOURCE_PATH)/src/corelib/io/qtextstream.cpp \
110 $(SOURCE_PATH)/src/corelib/io/qurl.cpp \
111 $(SOURCE_PATH)/src/corelib/plugin/quuid.cpp \
112 $(SOURCE_PATH)/src/corelib/io/qsettings.cpp \
113 $(SOURCE_PATH)/src/corelib/global/qlibraryinfo.cpp \
114 $(SOURCE_PATH)/src/corelib/kernel/qvariant.cpp \
115 $(SOURCE_PATH)/src/corelib/tools/qvector.cpp \
116 $(SOURCE_PATH)/src/corelib/tools/qvsnprintf.cpp \
117 $(SOURCE_PATH)/src/corelib/xml/qxmlstream.cpp \
118 $(SOURCE_PATH)/src/corelib/xml/qxmlutils.cpp \
119 $(SOURCE_PATH)/src/corelib/io/qfsfileengine_os2.cpp \
120 $(SOURCE_PATH)/src/corelib/io/qfsfileengine_iterator_os2.cpp \
[769]121 $(SOURCE_PATH)/src/corelib/io/qsettings_os2.cpp \
122 $(SOURCE_PATH)/tools/shared/windows/registry.cpp \
123 $(SOURCE_PATH)/tools/shared/symbian/epocroot.cpp
[390]124
125define SRC_TO_OBJ
126$(OBJECTS_DIR)\$(basename $(notdir $(1))).obj
127endef
128
129OBJECTS = $(foreach src,$(SOURCES),$(call SRC_TO_OBJ,$(src)))
130
[406]131qmake.exe: $(OBJECTS_DIR) $(OBJECTS)
[390]132 $(LINK) -o $@ $(OBJECTS) $(LIBS)
[406]133ifneq "$(QMAKE_EXEPACK)" ""
134 $(QMAKE_EXEPACK) $(QMAKE_EXEPACK_FLAGS) $@ $(QMAKE_EXEPACK_POST_FLAGS)
135endif
136 copy $@ $(BUILD_PATH)\bin\
[390]137
[406]138$(OBJECTS_DIR):
139 @mkdir $(OBJECTS_DIR)
140
[40]141Makefile: Makefile.os2-g++
[16]142 @echo "Out of date, please rerun configure"
143
[40]144define DEL_ONE
[16]145clean::
[40]146 -del $(1) >nul 2>&1
147endef
[16]148
[390]149$(foreach file,$(OBJECTS) $(ADDCLEAN),$(eval $(call DEL_ONE,$(file))))
150
[16]151distclean:: clean
[406]152 -del qmake.exe >nul 2>&1
[16]153
[390]154.SUFFIXES: .cpp .c
155