summaryrefslogtreecommitdiff
path: root/devel/qt4-qmake/files
diff options
context:
space:
mode:
authorTobias C. Berner <tcberner@FreeBSD.org>2017-02-18 19:48:05 +0000
committerTobias C. Berner <tcberner@FreeBSD.org>2017-02-18 19:48:05 +0000
commitf3c180c3431372077934f7658922b8a244419bdf (patch)
tree4d04227f02c7fda007ad74be01e1393168277b0b /devel/qt4-qmake/files
parentUpgrade from 2.2 to 2.3. (diff)
Update Qt5 to 5.7.1, and unify the Qt4 and Qt5 ports some more
* Update Qt5 to 5.7.1 * Move Qt4 binaries to lib/qt4/bin * Move Qt5 libraries to lib/qt5/lib By moving the libraries we should finally be able to get rid of the inplace upgrade bug (see ports bugs 194088, 195105 and 198720): when Qt5's libraries were lying in /usr/local/lib, which would often get added by pkgconfig to the linker paths via dependencies, the already installed libraries were linked against, instead of the ones that were being built. This forced us to make sure, that -L${WRKSRC}/lib was always coming before -L/usr/local/lib in the linker flags. With this change this should no longer be the case. * Rename some ports to match the rest (foo-qtX -> qtX-foo) * Depend on new port misc/qtchooser [see UPDATING & CHANGES] There are several new Qt5 ports which all have been created by Marie Loise Nolden <nolden@kde.org>. Thanks again. PR: 216797 Exp-Run by: antoine Reviewed by: rakuco, mat, groot_kde.org Approved by: rakuco (mentor) Differential Revision: https://reviews.freebsd.org/D9213
Notes
Notes: svn path=/head/; revision=434380
Diffstat (limited to 'devel/qt4-qmake/files')
-rw-r--r--devel/qt4-qmake/files/Makefile.bsd47
-rw-r--r--devel/qt4-qmake/files/patch-mkspecs__common__clang-unix.conf18
-rw-r--r--devel/qt4-qmake/files/patch-mkspecs__common__freebsd.conf55
-rw-r--r--devel/qt4-qmake/files/patch-mkspecs__freebsd-g++__qmake.conf51
-rw-r--r--devel/qt4-qmake/files/patch-option.cpp11
-rw-r--r--devel/qt4-qmake/files/qconfig.cpp.in21
6 files changed, 203 insertions, 0 deletions
diff --git a/devel/qt4-qmake/files/Makefile.bsd b/devel/qt4-qmake/files/Makefile.bsd
new file mode 100644
index 000000000000..cb91e92cc078
--- /dev/null
+++ b/devel/qt4-qmake/files/Makefile.bsd
@@ -0,0 +1,47 @@
+# $FreeBSD$
+
+_OBJS!= ${MAKE} -f Makefile.unix -V OBJS -V QOBJS
+# We'd like to avoid using qconfig.cpp, but can't -- see the comment
+# next to -DHAVE_CONFIG_CPP below:
+#_OBJS:= ${_OBJS:S/qconfig.o//}
+SRCS:= ${_OBJS:.o=.cpp}
+NO_MAN= true # qmake.1 anyone?
+
+.PATH: ${.CURDIR} ${.CURDIR:H}/src/corelib/tools ${.CURDIR:H}/src/corelib/io \
+ ${.CURDIR:H}/src/corelib/global ${.CURDIR:H}/src/corelib/plugin \
+ ${.CURDIR:H}/src/corelib/kernel ${.CURDIR:H}/src/corelib/codecs \
+ ${.CURDIR:H}/src/corelib/xml ${.CURDIR:H}/src/3rdparty/md4 \
+ ${.CURDIR:H}/src/3rdparty/md5 ${.CURDIR:H}/src/3rdparty/sha1 \
+ ${.CURDIR:H}/tools/shared/symbian ${.CURDIR:H}/tools/shared/windows
+
+CXXFLAGS+=-I${.CURDIR:H}/mkspecs/freebsd-${QMAKE_COMPILER}
+
+.for s in src/corelib/arch/generic src/corelib/global src/corelib/tools \
+ src/corelib/kernel src/corelib/codecs \
+ src/3rdparty/md5 src/3rdparty/md4 src/3rdparty/sha1 \
+ tools/shared include/QtCore include
+CXXFLAGS+=-I${.CURDIR:H}/$s
+.endfor
+
+.for g in /. /unix /win32 /mac /symbian /integrity
+.PATH: ${.CURDIR}/generators$g
+CXXFLAGS+=-I${.CURDIR}/generators$g
+.endfor
+
+CXXFLAGS+=-I. -I"${FILESDIR}"
+
+CXXFLAGS+=-DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_NO_COMPONENT \
+ -DQT_NO_STL -DQT_BUILD_QMAKE -DQT_NO_COMPRESS -DHAVE_QCONFIG_CPP \
+ -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT \
+ -DQT_BOOTSTRAPPED -DQMAKE_OPENSOURCE_EDITION
+
+# I guess, qconfig.cpp used to be optional, but no longer is -- due to
+# bit-rot in Qt sources. So we still have to compile it, but, by not
+# adding the following define, we reduce the seemingly needless usage of
+# it:
+# -DHAVE_QCONFIG_CPP
+
+PROG_CXX=${QMAKE:T}
+BINDIR= ${PREFIX}/${QT_BINDIR_REL}
+
+.include <bsd.prog.mk>
diff --git a/devel/qt4-qmake/files/patch-mkspecs__common__clang-unix.conf b/devel/qt4-qmake/files/patch-mkspecs__common__clang-unix.conf
new file mode 100644
index 000000000000..541932731d95
--- /dev/null
+++ b/devel/qt4-qmake/files/patch-mkspecs__common__clang-unix.conf
@@ -0,0 +1,18 @@
+--- ../mkspecs/common/clang-unix.conf.orig 2013-12-05 22:57:53.135156000 +0000
++++ ../mkspecs/common/clang-unix.conf 2013-12-05 23:09:36.960149415 +0000
+@@ -0,0 +1,15 @@
++#
++# Qmake configuration for the Clang compiler on *nix-systems
++#
++# Before making changes to this file, please read the comment in
++# gcc-base.conf, to make sure the change goes in the right place.
++#
++# To verify that your change has the desired effect on the final configuration
++# you can use the manual test in tests/manual/mkspecs.
++#
++
++include(gcc-base-unix.conf)
++include(clang.conf)
++
++QMAKE_LFLAGS_RELEASE += -Wl,-O1
++QMAKE_LFLAGS_NOUNDEF += -Wl,--no-undefined
diff --git a/devel/qt4-qmake/files/patch-mkspecs__common__freebsd.conf b/devel/qt4-qmake/files/patch-mkspecs__common__freebsd.conf
new file mode 100644
index 000000000000..fa941e998a9e
--- /dev/null
+++ b/devel/qt4-qmake/files/patch-mkspecs__common__freebsd.conf
@@ -0,0 +1,55 @@
+--- ../mkspecs/common/freebsd.conf.orig 2013-12-05 22:57:28.140145000 +0000
++++ ../mkspecs/common/freebsd.conf 2013-12-05 23:10:22.897149108 +0000
+@@ -0,0 +1,52 @@
++#
++# qmake configuration for FreeBSD
++#
++
++QMAKE_CFLAGS_THREAD = -pthread -D_THREAD_SAFE
++
++QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
++
++# Addon software goes into /usr/local on the BSDs, by default we will look there
++QMAKE_INCDIR = $$[QT_INSTALL_HEADERS] /usr/local/include
++QMAKE_LIBDIR = $$[QT_INSTALL_LIBS] /usr/local/lib
++QMAKE_INCDIR_X11 = /usr/local/include
++QMAKE_LIBDIR_X11 = /usr/local/lib
++QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
++QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
++QMAKE_INCDIR_OPENGL = /usr/local/include
++QMAKE_LIBDIR_OPENGL = /usr/local/lib
++
++QMAKE_LFLAGS_THREAD = -pthread
++
++QMAKE_LIBS =
++QMAKE_LIBS_DYNLOAD =
++QMAKE_LIBS_X11 = -lXext -lX11 -lm
++QMAKE_LIBS_X11SM = -lSM -lICE
++QMAKE_LIBS_OPENGL = -lGL
++QMAKE_LIBS_OPENGL_QT = -lGL
++QMAKE_LIBS_THREAD =
++
++QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
++QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
++
++QMAKE_AR = ar cqs
++QMAKE_OBJCOPY = objcopy
++QMAKE_RANLIB =
++
++QMAKE_TAR = tar -cf
++QMAKE_GZIP = gzip -9f
++
++QMAKE_COPY = cp -f
++QMAKE_COPY_FILE = $$QMAKE_COPY
++QMAKE_COPY_DIR = $$QMAKE_COPY -R
++QMAKE_MOVE = mv -f
++QMAKE_DEL_FILE = rm -f
++QMAKE_DEL_DIR = rmdir
++QMAKE_STRIP = strip
++QMAKE_STRIPFLAGS_LIB += --strip-unneeded
++QMAKE_CHK_DIR_EXISTS = test -d
++QMAKE_MKDIR = mkdir -p
++QMAKE_INSTALL_FILE = install -m 644 -p
++QMAKE_INSTALL_PROGRAM = install -m 755 -p
++
++include(unix.conf)
diff --git a/devel/qt4-qmake/files/patch-mkspecs__freebsd-g++__qmake.conf b/devel/qt4-qmake/files/patch-mkspecs__freebsd-g++__qmake.conf
new file mode 100644
index 000000000000..07ff28d5f0ec
--- /dev/null
+++ b/devel/qt4-qmake/files/patch-mkspecs__freebsd-g++__qmake.conf
@@ -0,0 +1,51 @@
+--- ../mkspecs/freebsd-g++/qmake.conf.orig 2013-06-07 05:17:00.000000000 +0000
++++ ../mkspecs/freebsd-g++/qmake.conf 2013-12-05 23:07:25.210153920 +0000
+@@ -8,47 +8,7 @@
+ CONFIG += qt warn_on release link_prl gdb_dwarf_index
+ QT += core gui
+
+-QMAKE_CFLAGS_THREAD = -pthread -D_THREAD_SAFE
+-
+-QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
+-
+-# Addon software goes into /usr/local on the BSDs, by default we will look there
+-QMAKE_INCDIR = /usr/local/include
+-QMAKE_LIBDIR = /usr/local/lib
+-QMAKE_INCDIR_X11 = /usr/X11R6/include
+-QMAKE_LIBDIR_X11 = /usr/X11R6/lib
+-QMAKE_INCDIR_QT = $$[QT_INSTALL_HEADERS]
+-QMAKE_LIBDIR_QT = $$[QT_INSTALL_LIBS]
+-QMAKE_INCDIR_OPENGL = /usr/X11R6/include
+-QMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
+-
+-QMAKE_LFLAGS_THREAD = -pthread
+-
+-QMAKE_LIBS =
+-QMAKE_LIBS_DYNLOAD =
+-QMAKE_LIBS_X11 = -lXext -lX11 -lm
+-QMAKE_LIBS_X11SM = -lSM -lICE
+-QMAKE_LIBS_OPENGL = -lGL
+-QMAKE_LIBS_OPENGL_QT = -lGL
+-QMAKE_LIBS_THREAD =
+-
+-QMAKE_MOC = $$[QT_INSTALL_BINS]/moc
+-QMAKE_UIC = $$[QT_INSTALL_BINS]/uic
+-
+-QMAKE_AR = ar cqs
+-QMAKE_OBJCOPY = objcopy
+-QMAKE_RANLIB =
+-
+-QMAKE_TAR = tar -cf
+-QMAKE_GZIP = gzip -9f
+-
+-QMAKE_COPY = cp -f
+-QMAKE_MOVE = mv -f
+-QMAKE_DEL_FILE = rm -f
+-QMAKE_DEL_DIR = rmdir
+-QMAKE_CHK_DIR_EXISTS = test -d
+-QMAKE_MKDIR = mkdir -p
+-include(../common/unix.conf)
++include(../common/freebsd.conf)
+ include(../common/gcc-base-unix.conf)
+ include(../common/g++-unix.conf)
+ load(qt_config)
diff --git a/devel/qt4-qmake/files/patch-option.cpp b/devel/qt4-qmake/files/patch-option.cpp
new file mode 100644
index 000000000000..e93b6be46ec1
--- /dev/null
+++ b/devel/qt4-qmake/files/patch-option.cpp
@@ -0,0 +1,11 @@
+--- ./option.cpp.orig 2012-09-11 01:36:36.000000000 +0000
++++ ./option.cpp 2012-10-27 21:51:28.131151563 +0000
+@@ -482,7 +482,7 @@
+ env_argc++;
+ }
+ } else {
+- if(!env_argv || env_argc > env_size) {
++ if(!env_argv || env_argc >= env_size) {
+ env_argv = (char **)realloc(env_argv, sizeof(char *)*(env_size+=10));
+ for(int i2 = env_argc; i2 < env_size; i2++)
+ env_argv[i2] = NULL;
diff --git a/devel/qt4-qmake/files/qconfig.cpp.in b/devel/qt4-qmake/files/qconfig.cpp.in
new file mode 100644
index 000000000000..b3a5b6120371
--- /dev/null
+++ b/devel/qt4-qmake/files/qconfig.cpp.in
@@ -0,0 +1,21 @@
+/*
+ * $FreeBSD$
+ */
+
+/* Installation date */
+static const char qt_configure_installation [12+11] = "qt_instdate=%%TODAY%%";
+
+#define QT_CONFIGURE_LICENSEE "Open Source";
+#define QT_CONFIGURE_LICENSED_PRODUCTS "OpenSource";
+#define QT_CONFIGURE_PREFIX_PATH "%%PREFIX%%";
+#define QT_CONFIGURE_DOCUMENTATION_PATH "%%PREFIX%%/%%QT_DOCDIR%%";
+#define QT_CONFIGURE_HEADERS_PATH "%%PREFIX%%/%%QT_INCDIR%%";
+#define QT_CONFIGURE_LIBRARIES_PATH "%%PREFIX%%/%%QT_LIBDIR%%";
+#define QT_CONFIGURE_BINARIES_PATH "%%PREFIX%%/%%QT_BINDIR%%";
+#define QT_CONFIGURE_PLUGINS_PATH "%%PREFIX%%/%%QT_PLUGINDIR%%";
+#define QT_CONFIGURE_IMPORTS_PATH "%%PREFIX%%/%%QT_IMPORTDIR%%";
+#define QT_CONFIGURE_DATA_PATH "%%PREFIX%%/%%QT_DATADIR%%";
+#define QT_CONFIGURE_TRANSLATIONS_PATH "%%PREFIX%%/%%QT_L10NDIR%%";
+#define QT_CONFIGURE_SETTINGS_PATH "%%PREFIX%%/%%QT_ETCDIR%%";
+#define QT_CONFIGURE_EXAMPLES_PATH "%%PREFIX%%/%%QT_EXAMPLEDIR%%/examples";
+#define QT_CONFIGURE_DEMOS_PATH "%%PREFIX%%/%%QT_EXAMPLEDIR%%/demos/";