qt5base-lts/mkspecs/features/win32/idcidl.prf
Joerg Bornemann 9d650a4b36 don't link qtmain.lib when using idcidl.prf
QAxServer projects must not link qtmain.lib.
This awful hack was adapted from the old qaxserver.prf

Change-Id: I78b4cbf6714bfbd88341449b9230f1989cff8a6f
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
2012-11-30 21:57:49 +01:00

53 lines
2.0 KiB
Plaintext

build_pass:console: {
warning("QAxServer applications cannot be console applications.")
warning("Remove 'console' from your CONFIG.")
}
# Do not link qtmain.lib
QMAKE_LIBS_QT_ENTRY =
ACTIVEQT_VERSION = $$VERSION
isEmpty(ACTIVEQT_VERSION):ACTIVEQT_VERSION = 1.0
qtPrepareTool(QMAKE_IDC, idc)
contains(TEMPLATE, "vc.*") {
ACTIVEQT_IDC = $${QMAKE_IDC}
ACTIVEQT_IDL = $${QMAKE_IDL}
ACTIVEQT_TARGET = "$(TargetPath)"
win32-msvc {
ACTIVEQT_NEWLINE = $$escape_expand(\\t)
ACTIVEQT_OUTPUT = $(IntDir)/$${TARGET}
} else {
ACTIVEQT_NEWLINE = $$escape_expand(\\n\\t)
ACTIVEQT_OUTPUT = $(IntDir)$${TARGET}
}
ACTIVEQT_TLBOUT = "$(TargetDir)/$${TARGET}.tlb"
GENERATED += $${OBJECTS_DIR}/$${TARGET}.idl $${ACTIVEQT_TLBOUT}
} else {
ACTIVEQT_IDC = -$(IDC)
ACTIVEQT_IDL = -$(IDL)
ACTIVEQT_NEWLINE = $$escape_expand(\\n\\t)
ACTIVEQT_TARGET = $(DESTDIR_TARGET)
ACTIVEQT_OUTPUT = $(OBJECTS_DIR)/$${TARGET}
isEmpty(DESTDIR) {
ACTIVEQT_TLBOUT = $${TARGET}.tlb
} else {
ACTIVEQT_TLBOUT = $${DESTDIR}/$${TARGET}.tlb
}
}
!qaxserver_no_postlink {
!isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK += $$quote($$ACTIVEQT_NEWLINE)
QMAKE_POST_LINK += $$quote($$ACTIVEQT_IDC $${ACTIVEQT_TARGET} /idl $${ACTIVEQT_OUTPUT}.idl -version $${ACTIVEQT_VERSION}$${ACTIVEQT_NEWLINE})
!isEmpty(RC_FILE) {
QMAKE_POST_LINK += $$quote($$ACTIVEQT_IDL "$${ACTIVEQT_OUTPUT}.idl" /nologo /tlb "$${ACTIVEQT_OUTPUT}.tlb"$$ACTIVEQT_NEWLINE)
QMAKE_POST_LINK += $$quote($$ACTIVEQT_IDC $${ACTIVEQT_TARGET} /tlb $${ACTIVEQT_OUTPUT}.tlb$$ACTIVEQT_NEWLINE)
} else {
QMAKE_POST_LINK += $$quote($$ACTIVEQT_IDL "$${ACTIVEQT_OUTPUT}.idl" /nologo /tlb "$${ACTIVEQT_TLBOUT}"$$ACTIVEQT_NEWLINE)
message("No rc-file linked into project; type library will be a separate file.")
}
QMAKE_POST_LINK += $$quote($$ACTIVEQT_IDC $${ACTIVEQT_TARGET} /regserver)
QMAKE_CLEAN += $${ACTIVEQT_OUTPUT}.idl $${ACTIVEQT_OUTPUT}.tlb
}