summaryrefslogtreecommitdiffstats
path: root/qmake
diff options
context:
space:
mode:
authorJonathan Liu <net147@gmail.com>2011-04-04 11:01:48 (GMT)
committerOswald Buddenhagen <oswald.buddenhagen@nokia.com>2011-04-04 11:01:56 (GMT)
commita6d48ca57403539ab8e00d16f80bd4cd334e1b5c (patch)
treec1a33a184fb4b110abc58c6475029cd0f223fd70 /qmake
parent0170a4dd8a720921e591622188bd1f11d9fe357b (diff)
downloadQt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.zip
Qt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.tar.gz
Qt-a6d48ca57403539ab8e00d16f80bd4cd334e1b5c.tar.bz2
win32-g++: Correct the order of linked Windows libraries
On Windows 7, kernel32.dll exports many of the same functions as advapi32.dll. If executables link to these functions in kernel32.dll instead of advapi32.dll, running these executables on older versions of Windows will cause an entry point error. This would occur due to kernel32 being specified before advapi32. To resolve this issue, advapi32 is specified before kernel32 when linking. Task-number: QTBUG-18537 Merge-request: 1169 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Diffstat (limited to 'qmake')
-rw-r--r--qmake/Makefile.win32-g++2
-rw-r--r--qmake/Makefile.win32-g++-sh2
-rw-r--r--qmake/qmake.pri2
3 files changed, 3 insertions, 3 deletions
diff --git a/qmake/Makefile.win32-g++ b/qmake/Makefile.win32-g++
index 29fbd0a..5a46e41 100644
--- a/qmake/Makefile.win32-g++
+++ b/qmake/Makefile.win32-g++
@@ -28,7 +28,7 @@ CFLAGS = -c -o$@ -O \
-DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT
CXXFLAGS = $(CFLAGS)
LFLAGS = -static-libgcc -static-libstdc++ -s
-LIBS = -lole32 -luuid
+LIBS = -lole32 -luuid -ladvapi32 -lkernel32
LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
ADDCLEAN =
diff --git a/qmake/Makefile.win32-g++-sh b/qmake/Makefile.win32-g++-sh
index 9c7942c..6ca7514 100644
--- a/qmake/Makefile.win32-g++-sh
+++ b/qmake/Makefile.win32-g++-sh
@@ -28,7 +28,7 @@ CFLAGS = -c -o$@ -O \
-DQT_BOOTSTRAPPED -DQLIBRARYINFO_EPOCROOT
CXXFLAGS = $(CFLAGS)
LFLAGS = -static-libgcc -static-libstdc++ -s
-LIBS = -lole32 -luuid
+LIBS = -lole32 -luuid -ladvapi32 -lkernel32
LINKQMAKE = g++ $(LFLAGS) -o qmake.exe $(OBJS) $(QTOBJS) $(LIBS)
ADDCLEAN =
diff --git a/qmake/qmake.pri b/qmake/qmake.pri
index 8f46a2e..3a0ab12 100644
--- a/qmake/qmake.pri
+++ b/qmake/qmake.pri
@@ -135,7 +135,7 @@ bootstrap { #Qt code
SOURCES += qfsfileengine_win.cpp qfsfileengine_iterator_win.cpp qsettings_win.cpp \
qsystemlibrary.cpp
win32-msvc*:LIBS += ole32.lib advapi32.lib
- win32-g++*:LIBS += -lole32 -luuid
+ win32-g++*:LIBS += -lole32 -luuid -ladvapi32 -lkernel32
}
qnx {