code_app/build2/qt/HGTwainUser/HGTwainUser.pro

151 lines
4.8 KiB
Prolog

CONFIG -= qt
TEMPLATE = lib
DEFINES += UNTITLED_LIBRARY
CONFIG += c++11
CONFIG += dll
# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Please consult the documentation of the
# deprecated API in order to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS
# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
include($$PWD/../HGOEM.pri)
CONFIG(debug, debug|release) {
MY_CONFIGURE = Debug
}
CONFIG(release, debug|release) {
MY_CONFIGURE = Release
}
win32 {
SOURCES += \
../../../modules/twain_user/HGTwain.cpp \
../../../modules/twain_user/HGTwainImpl.cpp \
../../../modules/twain_user/dllmain.cpp
HEADERS += \
../../../modules/twain_user/HGTwain.h \
../../../modules/twain_user/HGTwainErr.h \
../../../modules/twain_user/HGTwainImpl.hpp
MY_OS = windows
TARGET = $${OEM_PREFIX}TwainUser
contains(QT_ARCH, i386) {
MY_ARCH = x86
}
contains(QT_ARCH, x86_64) {
MY_ARCH = x64
}
CONFIG(debug, debug|release) {
QMAKE_CFLAGS_DEBUG += -MTd
QMAKE_CXXFLAGS_DEBUG += -MTd
}
CONFIG(release, debug|release) {
QMAKE_CFLAGS_RELEASE += -MT
QMAKE_CXXFLAGS_RELEASE += -MT
QMAKE_LFLAGS_RELEASE += /MAP
QMAKE_CFLAGS_RELEASE += /Zi
QMAKE_LFLAGS_RELEASE += /debug /opt:ref
}
DEF_FILE = HGTwainUser.def
LIBS += -lgdi32 -lgdiplus -ldbghelp -luser32
LIBS += -L$$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE} -l$${OEM_PREFIX}Base -l$${OEM_PREFIX}TwainUI
}
unix {
DISTRIBUTION = $$system(cat /etc/issue | cut -d\' \' -f1)
contains(DISTRIBUTION, UnionTech) {
MY_OS = uos
} else {
MY_OS = kylin
}
TARGET = $${OEM_PREFIX2}TwainUser
contains(QT_ARCH, x86_64) {
MY_ARCH = amd64
MY_ARCH2 = x86_64
}
contains(QT_ARCH, arm64) {
MY_ARCH = aarch64
MY_ARCH2 = aarch64
}
contains(QT_ARCH, mips64) {
MY_ARCH = mips64
MY_ARCH2 = mips64
}
contains(QT_ARCH, loongarch64) {
MY_ARCH = loongarch64
MY_ARCH2 = loongarch64
}
CONFIG += unversioned_libname unversioned_soname
QMAKE_CXXFLAGS += -fvisibility=hidden
QMAKE_LFLAGS += -static-libstdc++ -static-libgcc
QMAKE_LFLAGS += -Wl,-rpath,\'\$\$ORIGIN\' -Wl,--exclude-libs,ALL
QMAKE_LFLAGS += -z defs -B direct
LIBS += -lpthread -ldl
LIBS += -L$$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE} -l$${OEM_PREFIX2}Base -l$${OEM_PREFIX2}TwainUI
}
INCLUDEPATH += $$PWD/../../../modules
INCLUDEPATH += $$PWD/../../../../sdk/include
DESTDIR = $$PWD/../../build/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}
UI_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET}
MOC_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET}
OBJECTS_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET}
RCC_DIR = $$PWD/../../temp/$${MY_OS}/$${OEM_NAME}/$${MY_ARCH}/$${MY_CONFIGURE}/$${TARGET}
message(MY_OS: $$MY_OS)
message(MY_ARCH: $$MY_ARCH)
message(OEM_PREFIX: $$OEM_PREFIX)
message(OEM_PREFIX2: $$OEM_PREFIX2)
message(OEM_NAME: $$OEM_NAME)
message(MY_CONFIGURE: $$MY_CONFIGURE)
message(TARGET: $$TARGET)
message(DESTDIR: $$DESTDIR)
message(UI_DIR: $$UI_DIR)
message(MOC_DIR: $$MOC_DIR)
message(OBJECTS_DIR: $$OBJECTS_DIR)
message(RCC_DIR: $$RCC_DIR)
win32 {
CONFIG(release, debug|release) {
DESTLIB_PATH = $${PWD}/../../../../sdk/lib/win/$${MY_ARCH}/$${MY_CONFIGURE}/
DESTLIB_PATH = $$replace(DESTLIB_PATH, /, \\)
message(DESTLIB_PATH: $$DESTLIB_PATH)
DESTDLL_PATH = $${PWD}/../../../../release/win/$${MY_ARCH}/$${MY_CONFIGURE}/
DESTDLL_PATH = $$replace(DESTDLL_PATH, /, \\)
message(DESTDLL_PATH: $$DESTDLL_PATH)
SRCLIB_FILE = $${DESTDIR}/$${TARGET}.lib
SRCLIB_FILE = $$replace(SRCLIB_FILE, /, \\)
message(SRCLIB_FILE: $$SRCLIB_FILE)
SRCDLL_FILE = $${DESTDIR}/$${TARGET}.dll
SRCDLL_FILE = $$replace(SRCDLL_FILE, /, \\)
message(SRCDLL_FILE: $$SRCDLL_FILE)
SRCPDB_FILE = $${DESTDIR}/$${TARGET}.pdb
SRCPDB_FILE = $$replace(SRCPDB_FILE, /, \\)
message(SRCPDB_FILE: $$SRCPDB_FILE)
QMAKE_POST_LINK += xcopy /y $$SRCLIB_FILE $$DESTLIB_PATH && xcopy /y $$SRCDLL_FILE $$DESTDLL_PATH \
&& xcopy /y $$SRCPDB_FILE $$DESTDLL_PATH
}
}