Provide proper INSTALL targets for .pro files

Plus: reduce compiler warnings
This commit is contained in:
Matthias Koefferlein 2017-08-21 02:33:45 +02:00
parent edae27b9aa
commit 55e797ffaf
26 changed files with 107 additions and 131 deletions

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_ant
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_ANT_LIBRARY
TEMPLATE = lib
HEADERS = \
antConfig.h \
antConfigPage.h \

10
src/app.pri Normal file
View File

@ -0,0 +1,10 @@
TEMPLATE = app
inst_target.path = $$PREFIX
win32 {
inst_target.files = $$DESTDIR/$${TARGET}.exe
} else {
inst_target.files = $$DESTDIR/$${TARGET}
}
INSTALLS = inst_target

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/../../..
TARGET = klayout_bd
include($$PWD/../../../klayout.pri)
include($$PWD/../../../lib.pri)
DEFINES += MAKE_BD_LIBRARY
TEMPLATE = lib
SOURCES = \
bdInit.cc \
bdReaderOptions.cc \

View File

@ -1,12 +1,12 @@
include($$PWD/../../klayout.pri)
TEMPLATE = app
PRO_BASENAME = $$basename(_PRO_FILE_)
TARGET = $$replace(PRO_BASENAME, ".pro", "")
DESTDIR = $$OUT_PWD/../../..
include($$PWD/../../app.pri)
# Since the main function is entirely unspecific, we can put it into a common
# place - it's not part of the bd sources.
SOURCES = $$PWD/bd/main.cc

View File

@ -1,4 +1,7 @@
DESTDIR_UT = $$OUT_PWD/../..
DESTDIR = $$OUT_PWD/..
TARGET = bd_tests
include($$PWD/../../klayout.pri)
@ -13,7 +16,8 @@ SOURCES = \
bdStrmxorTests.cc \
INCLUDEPATH += ../src/bd
DEPENDPATH += ../src/bd
INCLUDEPATH += ../src/bd ../../db ../../tl ../../gsi ../../laybasic ../../lay ../../ut
DEPENDPATH += ../src/bd ../../db ../../tl ../../gsi ../../laybasic ../../lay ../../ut
LIBS += -L$$DESTDIR_UT -lklayout_db -lklayout_tl -lklayout_gsi -lklayout_laybasic -lklayout_lay -lklayout_ut
LIBS += -L$$DESTDIR -lklayout_bd

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_db
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_DB_LIBRARY
TEMPLATE = lib
SOURCES = \
dbArray.cc \
dbBox.cc \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_edt
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_EDT_LIBRARY
TEMPLATE = lib
HEADERS = \
edtConfig.h \
edtDialogs.h \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_ext
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_EXT_LIBRARY
TEMPLATE = lib
HEADERS += \
extBooleanOperationsDialogs.h \
extDEFImporter.h \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_gsi
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_GSI_LIBRARY
TEMPLATE = lib
SOURCES = \
gsi.cc \
gsiClassBase.cc \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_gsiqt
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_GSIQT_LIBRARY
TEMPLATE = lib
# NOTE: db is required since some bridges to db are provided (i.e db::Polygon)
INCLUDEPATH += ../tl ../gsi ../db ../gsiqt
DEPENDPATH += ../tl ../gsi ../db ../gsiqt

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_img
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_IMG_LIBRARY
TEMPLATE = lib
HEADERS = \
imgLandmarksDialog.h \
imgNavigator.h \

View File

@ -44,9 +44,6 @@ equals(HAVE_QT5, "1") {
CONFIG += designer
}
target.path = $$PREFIX
INSTALLS += target
# only support the required symbols for shared object load performance
win32 {
QMAKE_LFLAGS += -Wl,--exclude-all-symbols

View File

@ -3,10 +3,10 @@ DESTDIR = $$OUT_PWD/..
include($$PWD/../klayout.pri)
TEMPLATE = app
TARGET = klayout
include($$PWD/../app.pri)
HEADERS = \
FORMS = \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_lay
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_LAY_LIBRARY
TEMPLATE = lib
HEADERS = \
layApplication.h \
layClipDialog.h \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_laybasic
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_LAYBASIC_LIBRARY
TEMPLATE = lib
FORMS = \
AlignCellOptionsDialog.ui \
BookmarkManagementForm.ui \

10
src/lib.pri Normal file
View File

@ -0,0 +1,10 @@
TEMPLATE = lib
inst_target.path = $$PREFIX
win32 {
inst_target.files = $$DESTDIR/$${TARGET}.dll
} else {
inst_target.files = $$DESTDIR/lib$${TARGET}.so
}
INSTALLS = inst_target

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_lib
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_LIB_LIBRARY
TEMPLATE = lib
HEADERS = \
libBasicArc.h \
libBasicCircle.h \

View File

@ -1,15 +1,6 @@
DESTDIR_UT = $$OUT_PWD/../..
DESTDIR = $$OUT_PWD/..
TEMPLATE = lib
INCLUDEPATH += ../src ../../db ../../tl ../../gsi ../../laybasic ../../lay ../../ut
DEPENDPATH += ../src ../../db ../../tl ../../gsi ../../laybasic ../../lay ../../ut
LIBS += -L$$DESTDIR_UT -lklayout_db -lklayout_tl -lklayout_gsi -lklayout_laybasic -lklayout_lay -lklayout_ut
QMAKE_RPATHDIR += $$DESTDIR
# Only on Windows, DESTDIR_TARGET is usable. On this platform, a blank happens to appear between
# $(DESTDIR) and $(TARGET)
win32 {

View File

@ -1,19 +0,0 @@
DESTDIR_UT = $$OUT_PWD/../../..
DESTDIR = $$OUT_PWD/..
TEMPLATE = lib
INCLUDEPATH += ../src ../../../db ../../../tl ../../../gsi ../../../laybasic ../../../lay ../../../ut
DEPENDPATH += ../src ../../../db ../../../tl ../../../gsi ../../../laybasic ../../../lay ../../../ut
LIBS += -L$$DESTDIR_UT -lklayout_db -lklayout_tl -lklayout_gsi -lklayout_laybasic -lklayout_lay -lklayout_ut
QMAKE_RPATHDIR += $$DESTDIR
# Only on Windows, DESTDIR_TARGET is usable. On this platform, a blank happens to appear between
# $(DESTDIR) and $(TARGET)
win32 {
QMAKE_POST_LINK += $(COPY) $(DESTDIR_TARGET) $$DESTDIR_UT/$${TARGET}.ut
} else {
QMAKE_POST_LINK += $(COPY) $(DESTDIR)$(TARGET) $$DESTDIR_UT/$${TARGET}.ut
}

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_pya
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_PYA_LIBRARY
TEMPLATE = lib
SOURCES = \
pya.cc \
pyaConvert.cc \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_pyastub
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_PYA_LIBRARY
TEMPLATE = lib
SOURCES = pya.cc
INCLUDEPATH += ../tl ../gsi

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_rba
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_RBA_LIBRARY
TEMPLATE = lib
SOURCES = rba.cc \
rbaConvert.cc \
rbaInspector.cc \

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_rbastub
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_RBA_LIBRARY
TEMPLATE = lib
HEADERS = rbaCommon.h
SOURCES = rba.cc

View File

@ -3,11 +3,10 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_rdb
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_RDB_LIBRARY
TEMPLATE = lib
FORMS = \
RESOURCES = \

View File

@ -3,13 +3,12 @@ DESTDIR = $$OUT_PWD/..
TARGET = klayout_tl
include($$PWD/../klayout.pri)
include($$PWD/../lib.pri)
DEFINES += MAKE_TL_LIBRARY
LIBS += -lz
TEMPLATE = lib
FORMS = \
PasswordDialog.ui

View File

@ -43,23 +43,23 @@ TEST(1)
<< tl::arg ("-f|--flong=value", &f, "");
{
char *argv[] = { "x", "y" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "y" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "y");
EXPECT_EQ (b, 0);
{
char *argv[] = { "x", "z", "17" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "z", "17" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "z");
EXPECT_EQ (b, 17);
b = 0;
{
char *argv[] = { "x", "u", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (b, 0);
@ -68,24 +68,24 @@ TEST(1)
b = 0;
c = true;
{
char *argv[] = { "x", "u", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (b, 0);
EXPECT_EQ (c, false);
{
char *argv[] = { "x", "u", "-c", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (c, false);
b = 0;
c = false;
{
char *argv[] = { "x", "u", "-c", "-p=21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-p=21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (b, 0);
@ -95,8 +95,8 @@ TEST(1)
b = 0;
c = false;
{
char *argv[] = { "x", "u", "-p", "22", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-p", "22", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (b, 0);
@ -105,31 +105,31 @@ TEST(1)
e = false;
{
char *argv[] = { "x", "u", "--plong", "23" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--plong", "23" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (d, 23);
EXPECT_EQ (e, false);
{
char *argv[] = { "x", "u", "--plong=24", "--elong" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--plong=24", "--elong" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (d, 24);
EXPECT_EQ (e, true);
{
char *argv[] = { "x", "u", "-c", "-f=foo" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-f=foo" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (f, "foo");
{
char *argv[] = { "x", "u", "--flong", "bar" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--flong", "bar" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (a, "u");
EXPECT_EQ (f, "bar");
@ -174,23 +174,23 @@ TEST(2)
<< tl::arg ("-f|--flong=value", &v, &Values::set_f, "");
{
char *argv[] = { "x", "y" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "y" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "y");
EXPECT_EQ (v.b, 0);
{
char *argv[] = { "x", "z", "17" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "z", "17" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "z");
EXPECT_EQ (v.b, 17);
v.b = 0;
{
char *argv[] = { "x", "u", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.b, 0);
@ -199,24 +199,24 @@ TEST(2)
v.b = 0;
v.c = true;
{
char *argv[] = { "x", "u", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.b, 0);
EXPECT_EQ (v.c, false);
{
char *argv[] = { "x", "u", "-c", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-cc" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.c, false);
v.b = 0;
v.c = false;
{
char *argv[] = { "x", "u", "-c", "-p=21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-p=21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.b, 0);
@ -226,8 +226,8 @@ TEST(2)
v.b = 0;
v.c = false;
{
char *argv[] = { "x", "u", "-p", "22", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-p", "22", "-c" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.b, 0);
@ -236,31 +236,31 @@ TEST(2)
v.e = false;
{
char *argv[] = { "x", "u", "--plong", "23" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--plong", "23" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.d, 23);
EXPECT_EQ (v.e, false);
{
char *argv[] = { "x", "u", "--plong=24", "--elong" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--plong=24", "--elong" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.d, 24);
EXPECT_EQ (v.e, true);
{
char *argv[] = { "x", "u", "-c", "-f=foo" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "-c", "-f=foo" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.f, "foo");
{
char *argv[] = { "x", "u", "--flong", "bar" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "u", "--flong", "bar" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (v.a, "u");
EXPECT_EQ (v.f, "bar");
@ -277,8 +277,8 @@ TEST(3)
<< tl::arg ("-b", &b, "");
{
char *argv[] = { "x", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 3);
EXPECT_EQ (a[0], "r");
@ -288,8 +288,8 @@ TEST(3)
a.clear ();
{
char *argv[] = { "x", "\"r,u\",v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "\"r,u\",v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 2);
EXPECT_EQ (a[0], "r,u");
@ -298,8 +298,8 @@ TEST(3)
a.clear ();
{
char *argv[] = { "x", "'\"'", "-b=1,5,-13" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "'\"'", "-b=1,5,-13" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 1);
EXPECT_EQ (a[0], "\"");
@ -311,8 +311,8 @@ TEST(3)
a.clear ();
b.clear ();
{
char *argv[] = { "x", "", "-b", "-13,21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "", "-b", "-13,21" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 0);
EXPECT_EQ (int (b.size ()), 2);
@ -331,8 +331,8 @@ TEST(4)
<< tl::arg ("*-b|--blong", &b, "");
{
char *argv[] = { "x", "-a", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "-a", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 1);
EXPECT_EQ (a[0], "r,u,v");
@ -341,8 +341,8 @@ TEST(4)
a.clear ();
b.clear ();
{
char *argv[] = { "x", "-b", "1", "-a=r", "-a", "u", "--along=v", "--blong=2" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "-b", "1", "-a=r", "-a", "u", "--along=v", "--blong=2" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (a.size ()), 3);
EXPECT_EQ (int (b.size ()), 2);
@ -366,8 +366,8 @@ TEST(5)
<< tl::arg ("?*c", &c, "");
{
char *argv[] = { "x", "y", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "y", "r,u,v" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (b.size ()), 3);
EXPECT_EQ (int (c.size ()), 0);
@ -381,8 +381,8 @@ TEST(5)
c.clear ();
{
char *argv[] = { "x", "y", "r,u,v", "a,b", "c", "d" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), argv);
const char *argv[] = { "x", "y", "r,u,v", "a,b", "c", "d" };
cmd.parse (sizeof (argv) / sizeof (argv[0]), (char **) argv);
}
EXPECT_EQ (int (b.size ()), 3);
EXPECT_EQ (int (c.size ()), 3);