summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>2014-11-17 15:31:07 +0100
committerOswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>2015-02-02 11:14:34 +0000
commit12b7b2c643e95681e2d6045de648e9031fb7fc11 (patch)
treef60ca9e6c4d7bcf0bcc38ba35a6bc67880accc5a
parent6e6b50f541a7620c78ba0b3ac7c44652a3dcaefa (diff)
nuke gbuild generator
it never left the rudimentary stage. should it ever be re-added, it needs to be done basically from scratch anyway. Change-Id: I76858c8a2c90235f228f7a6e5a178a10a2669d37 Reviewed-by: Rolland Dudemaine <rolland@ghs.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
-rw-r--r--mkspecs/unsupported/integrity-ghs/qmake.conf53
-rw-r--r--mkspecs/unsupported/integrity-ghs/qplatformdefs.h198
-rw-r--r--qmake/Makefile.unix7
-rw-r--r--qmake/Makefile.win322
-rw-r--r--qmake/generators/integrity/gbuild.cpp429
-rw-r--r--qmake/generators/integrity/gbuild.h66
-rw-r--r--qmake/generators/metamakefile.cpp3
-rw-r--r--qmake/qmake.pri2
8 files changed, 3 insertions, 757 deletions
diff --git a/mkspecs/unsupported/integrity-ghs/qmake.conf b/mkspecs/unsupported/integrity-ghs/qmake.conf
deleted file mode 100644
index 1ffc2ccec8..0000000000
--- a/mkspecs/unsupported/integrity-ghs/qmake.conf
+++ /dev/null
@@ -1,53 +0,0 @@
-#
-# qmake configuration for integrity-ghs
-#
-
-MAKEFILE_GENERATOR = GBUILD
-QMAKE_PLATFORM = integrity unix posix
-CONFIG -= link_prl # Not implemented
-
-QMAKE_CFLAGS = -bsp $$INTEGRITY_BSP -os_dir $__OS_DIR
-QMAKE_CFLAGS += --diag_suppress=1,228,236,381,611,997
-QMAKE_CFLAGS_WARN_ON =
-QMAKE_CFLAGS_WARN_OFF = -w
-QMAKE_CFLAGS_RELEASE = -g -Ospeed -Olink --signed_fields --no_commons
-QMAKE_CFLAGS_DEBUG = -g --no_commons --signed_fields
-QMAKE_CFLAGS_SHLIB =
-QMAKE_CFLAGS_THREAD = -D_REENTRANT
-
-QMAKE_CXXFLAGS = $$QMAKE_CFLAGS --no_implicit_include --link_once_templates
-QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
-QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
-QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
-QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
-QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
-QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
-QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
-
-QMAKE_INCDIR =
-QMAKE_LIBDIR =
-QMAKE_INCDIR_X11 =
-QMAKE_LIBDIR_X11 =
-QMAKE_INCDIR_OPENGL =
-QMAKE_LIBDIR_OPENGL =
-
-QMAKE_LFLAGS = -lposix -livfs -lnet -lsocket -lfbdev -ldl
-QMAKE_LFLAGS_RELEASE = -g -Ospeed -Olink --no_commons -non_shared --link_once_templates
-QMAKE_LFLAGS_DEBUG = -g --no_commons
-QMAKE_LFLAGS_SHLIB =
-QMAKE_LFLAGS_PLUGIN = $$QMAKE_LFLAGS_SHLIB
-QMAKE_LFLAGS_SONAME =
-QMAKE_LFLAGS_THREAD =
-QMAKE_LFLAGS_RPATH =
-
-QMAKE_LIBS =
-QMAKE_LIBS_DYNLOAD = -ldl
-QMAKE_LIBS_X11 =
-QMAKE_LIBS_THREAD =
-
-QMAKE_AR = ar cqs
-QMAKE_RANLIB =
-
-include(../../common/shell-unix.conf)
-load(qt_config)
-
diff --git a/mkspecs/unsupported/integrity-ghs/qplatformdefs.h b/mkspecs/unsupported/integrity-ghs/qplatformdefs.h
deleted file mode 100644
index 619d1f7a75..0000000000
--- a/mkspecs/unsupported/integrity-ghs/qplatformdefs.h
+++ /dev/null
@@ -1,198 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the QtGui module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL21$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 or version 3 as published by the Free
-** Software Foundation and appearing in the file LICENSE.LGPLv21 and
-** LICENSE.LGPLv3 included in the packaging of this file. Please review the
-** following information to ensure the GNU Lesser General Public License
-** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-// Get Qt defines/settings
-
-#include "qglobal.h"
-
-// Set any POSIX/XOPEN defines at the top of this file to turn on specific APIs
-
-#include <unistd.h>
-
-// We are hot - unistd.h should have turned on the specific APIs we requested
-
-#include <pthread.h>
-#include <dirent.h>
-#include <fcntl.h>
-#include <grp.h>
-#include <pwd.h>
-#include <signal.h>
-#include <dlfcn.h>
-#include <limits.h>
-
-#include <sys/types.h>
-#include <sys/ioctl.h>
-#include <sys/time.h>
-#include <sys/socket.h>
-#include <sys/stat.h>
-#include <sys/wait.h>
-#include <netinet/in.h>
-#ifndef QT_NO_IPV6IFNAME
-#include <net/if.h>
-#endif
-
-#ifdef QT_LARGEFILE_SUPPORT
-#define QT_STATBUF struct stat64
-#define QT_STATBUF4TSTAT struct stat64
-#define QT_STAT ::stat64
-#define QT_FSTAT ::fstat64
-#define QT_LSTAT ::lstat64
-#define QT_OPEN ::open64
-#define QT_TRUNCATE ::truncate64
-#define QT_FTRUNCATE ::ftruncate64
-#define QT_LSEEK ::lseek64
-#else
-#define QT_STATBUF struct stat
-#define QT_STATBUF4TSTAT struct stat
-#define QT_STAT ::stat
-#define QT_FSTAT ::fstat
-#define QT_LSTAT ::lstat
-#define QT_OPEN ::open
-#define QT_TRUNCATE ::truncate
-#define QT_FTRUNCATE ::ftruncate
-#define QT_LSEEK ::lseek
-#define QT_OPEN_LARGEFILE 0
-#endif
-
-#ifdef QT_LARGEFILE_SUPPORT
-#define QT_FOPEN ::fopen64
-#define QT_FSEEK ::fseeko64
-#define QT_FTELL ::ftello64
-#define QT_FGETPOS ::fgetpos64
-#define QT_FSETPOS ::fsetpos64
-#define QT_FPOS_T fpos64_t
-#define QT_OFF_T off64_t
-#else
-#define QT_FOPEN ::fopen
-#define QT_FSEEK ::fseek
-#define QT_FTELL ::ftell
-#define QT_FGETPOS ::fgetpos
-#define QT_FSETPOS ::fsetpos
-#define QT_FPOS_T fpos_t
-#define QT_OFF_T long
-#endif
-
-#define QT_STAT_REG S_IFREG
-#define QT_STAT_DIR S_IFDIR
-#define QT_STAT_MASK S_IFMT
-#define QT_STAT_LNK S_IFLNK
-#define QT_SOCKET_CONNECT ::connect
-#define QT_SOCKET_BIND ::bind
-#define QT_FILENO fileno
-#ifndef QT_CLOSE
-#define QT_CLOSE ::close
-#endif
-#ifndef QT_READ
-#define QT_READ ::read
-#endif
-#ifndef QT_WRITE
-#define QT_WRITE ::write
-#endif
-#define QT_ACCESS ::access
-#define QT_GETCWD ::getcwd
-#define QT_CHDIR ::chdir
-#define QT_MKDIR ::mkdir
-#define QT_RMDIR ::rmdir
-#define QT_OPEN_RDONLY O_RDONLY
-#define QT_OPEN_WRONLY O_WRONLY
-#define QT_OPEN_RDWR O_RDWR
-#define QT_OPEN_CREAT O_CREAT
-#define QT_OPEN_TRUNC O_TRUNC
-#define QT_OPEN_APPEND O_APPEND
-
-#define QT_SIGNAL_RETTYPE void
-#define QT_SIGNAL_ARGS int
-#define QT_SIGNAL_IGNORE SIG_IGN
-
-#define QT_MMAP ::mmap
-
-// Directory iteration
-#define QT_DIR DIR
-
-#define QT_OPENDIR ::opendir
-#define QT_CLOSEDIR ::closedir
-
-
-#if defined(QT_LARGEFILE_SUPPORT) \
- && defined(QT_USE_XOPEN_LFS_EXTENSIONS) \
- && !defined(QT_NO_READDIR64)
-# define QT_DIRENT struct dirent64
-# define QT_READDIR ::readdir64
-# define QT_READDIR_R ::readdir64_r
-#else
-# define QT_DIRENT struct dirent
-# define QT_READDIR ::readdir
-# define QT_READDIR_R ::readdir_r
-#endif
-
-#define QT_SOCKLEN_T socklen_t
-
-#if defined(_XOPEN_SOURCE) && (_XOPEN_SOURCE >= 500)
-#define QT_SNPRINTF ::snprintf
-#define QT_VSNPRINTF ::vsnprintf
-#endif
-
-// INTEGRITY doesn't enable the declaration in _POSIX_SOURCE mode,
-// because strdup() is not part of strict Posix; declare it here
-extern "C" char *strdup(const char *src);
-
-#ifndef MAXNAMLEN
-# define MAXNAMLEN NAME_MAX
-#endif
-
-#ifndef PATH_MAX
-# define PATH_MAX MAXPATHLEN
-#endif
-
-#ifndef NSIG
-# define NSIG _SIGMAX
-#endif
-
-#ifndef MAP_ANON
-# define MAP_ANON 0
-#endif
-
-typedef void (*sighandler_t)(int);
-
-#ifndef QT_NO_MMAP
-# define QT_NO_MMAP
-#endif
-
-#ifndef QT_NO_SHAREDMEMORY
-# define QT_NO_SHAREDMEMORY
-#endif
-
-#ifndef QT_NO_SYSTEMSEMAPHORE
-# define QT_NO_SYSTEMSEMAPHORE
-#endif
-
diff --git a/qmake/Makefile.unix b/qmake/Makefile.unix
index 74705bddfa..873d65a97c 100644
--- a/qmake/Makefile.unix
+++ b/qmake/Makefile.unix
@@ -9,7 +9,7 @@ OBJS=project.o option.o property.o main.o ioutils.o proitems.o \
mingw_make.o winmakefile.o projectgenerator.o \
meta.o makefiledeps.o metamakefile.o xmloutput.o pbuilder_pbx.o \
msvc_vcproj.o msvc_vcxproj.o msvc_nmake.o msvc_objectmodel.o msbuild_objectmodel.o \
- gbuild.o cesdkhandler.o
+ cesdkhandler.o
#qt code
QOBJS=qtextcodec.o qutfcodec.o qstring.o qstring_compat.o qstringbuilder.o qtextstream.o qiodevice.o \
@@ -33,7 +33,7 @@ DEPEND_SRC = \
$(QMKGENSRC)/makefiledeps.cpp $(QMKGENSRC)/metamakefile.cpp \
$(QMKGENSRC)/projectgenerator.cpp $(QMKGENSRC)/makefile.cpp \
$(QMKGENSRC)/unix/unixmake.cpp $(QMKGENSRC)/unix/unixmake2.cpp \
- $(QMKGENSRC)/mac/pbuilder_pbx.cpp $(QMKGENSRC)/integrity/gbuild.cpp \
+ $(QMKGENSRC)/mac/pbuilder_pbx.cpp \
$(QMKGENSRC)/win32/winmakefile.cpp \
$(QMKGENSRC)/win32/mingw_make.cpp $(QMKGENSRC)/win32/msvc_nmake.cpp \
$(QMKGENSRC)/win32/cesdkhandler.cpp $(QMKGENSRC)/mac/xmloutput.cpp \
@@ -209,9 +209,6 @@ cesdkhandler.o: $(QMKSRC)/generators/win32/cesdkhandler.cpp
pbuilder_pbx.o: $(QMKSRC)/generators/mac/pbuilder_pbx.cpp
$(CXX) -c -o $@ $(CXXFLAGS) $<
-gbuild.o: $(QMKSRC)/generators/integrity/gbuild.cpp
- $(CXX) -c -o $@ $(CXXFLAGS) $<
-
projectgenerator.o: $(QMKSRC)/generators/projectgenerator.cpp
$(CXX) -c -o $@ $(CXXFLAGS) $<
diff --git a/qmake/Makefile.win32 b/qmake/Makefile.win32
index ba3032409e..f84c30d4af 100644
--- a/qmake/Makefile.win32
+++ b/qmake/Makefile.win32
@@ -58,7 +58,7 @@ OBJS = project.obj main.obj ioutils.obj proitems.obj qmakevfs.obj \
makefiledeps.obj metamakefile.obj xmloutput.obj \
msvc_nmake.obj msvc_vcproj.obj msvc_vcxproj.obj \
msvc_objectmodel.obj msbuild_objectmodel.obj registry.obj \
- gbuild.obj cesdkhandler.obj
+ cesdkhandler.obj
#qt code
QTOBJS= \
diff --git a/qmake/generators/integrity/gbuild.cpp b/qmake/generators/integrity/gbuild.cpp
deleted file mode 100644
index 980c45bfb1..0000000000
--- a/qmake/generators/integrity/gbuild.cpp
+++ /dev/null
@@ -1,429 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the qmake application of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL21$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 or version 3 as published by the Free
-** Software Foundation and appearing in the file LICENSE.LGPLv21 and
-** LICENSE.LGPLv3 included in the packaging of this file. Please review the
-** following information to ensure the GNU Lesser General Public License
-** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#include "gbuild.h"
-#include "option.h"
-#include "meta.h"
-#include <qdir.h>
-#include <qregexp.h>
-#include <qdebug.h>
-#include <stdlib.h>
-#include <time.h>
-#ifdef Q_OS_UNIX
-# include <sys/types.h>
-# include <sys/stat.h>
-#endif
-
-QT_BEGIN_NAMESPACE
-
-unsigned int dllbase = 0x01000000;
-#define DLLOFFSET 0x600000
-
-GBuildMakefileGenerator::GBuildMakefileGenerator() : MakefileGenerator()
-{
- nativebins << "moc" << "rcc" << "uic" << "bootstrap";
-}
-
-bool
-GBuildMakefileGenerator::write()
-{
- QStringList tmp;
- QString filename(Option::output.fileName());
- QString pathtoremove(qmake_getpwd());
- QString relpath(pathtoremove);
- QString strtarget(project->first("TARGET").toQString());
- bool isnativebin = nativebins.contains(strtarget);
- relpath.replace(Option::output_dir, "");
-
- /* correct output for non-prl, non-recursive case */
- QString outname(qmake_getpwd());
- outname += QDir::separator();
- outname += fileInfo(Option::output.fileName()).baseName();
- outname += projectSuffix();
- Option::output.close();
- Option::output.setFileName(outname);
- MakefileGenerator::openOutput(Option::output, QString());
-
- if (strtarget != fileInfo(project->projectFile()).baseName()) {
- QString gpjname(strtarget);
- QString outputName(qmake_getpwd());
- outputName += QDir::separator();
- outputName += fileInfo(project->projectFile()).baseName();
- outputName += projectSuffix();
- QFile f(outputName);
- f.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate);
- QTextStream t(&f);
- t << "#!gbuild\n";
- t << "[Project]\n";
- t << gpjname << projectSuffix() << "\n";
- if ((project->first("TEMPLATE") == "lib")
- && project->isActiveConfig("shared"))
- t << gpjname << "_shared" << projectSuffix() << "\n";
- t.flush();
- gpjname += projectSuffix();
- Option::output.close();
- Option::output.setFileName(gpjname);
- MakefileGenerator::openOutput(Option::output, QString());
- }
-
- if ((project->first("TEMPLATE") == "app")
- && (!isnativebin)) {
- QTextStream t(&Option::output);
- QString intname(strtarget);
- intname += ".int";
- /* this is for bulding an INTEGRITY application.
- * generate the .int integrate file and the .gpj INTEGRITY Application
- * project file, then go on with regular files */
- t << "#!gbuild\n";
- t << "[INTEGRITY Application]\n";
- t << "\t:binDirRelative=.\n";
- t << "\t-o " << strtarget << "\n";
- t << intname << "\n";
- t << strtarget << "_app" << projectSuffix() << "\n";
- t.flush();
-
- /* generate integrate file */
- QFile f(intname);
- f.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate);
- QTextStream ti(&f);
- ti << "# This is a file automatically generated by qmake\n";
- ti << "# Modifications will be lost next time you run qmake\n";
- ti << "Kernel\n";
- ti << "\tFilename\tDynamicDownload\n";
- ti << "EndKernel\n\n";
- ti << "AddressSpace\n";
- ti << "\tName\t" << strtarget << "\n";
- ti << "\tFilename\t" << strtarget << "_app\n";
- ti << "\tMemoryPoolSize\t0x100000\n";
- ti << "\tLanguage\tC++\n";
- /* FIXME : heap size is huge to be big enough for every example
- * it should probably be tailored for each example, btu there is no
- * good way to guess that */
- ti << "\tHeapSize\t0x00D00000\n";
- ti << "\tTask\tInitial\n";
- ti << "\t\tStackSize\t0x30000\n";
- ti << "\tEndTask\n";
- ti << "EndAddressSpace\n";
- ti.flush();
-
- /* change current project file to <projectname>_app.gpj and continue
- * generation */
- filename.insert(filename.lastIndexOf("."), "_app");
- Option::output.close();
- Option::output.setFileName(filename);
- MakefileGenerator::openOutput(Option::output, QString());
- } else if ((project->first("TEMPLATE") == "lib")
- && project->isActiveConfig("shared")) {
- QString gpjname(strtarget);
- gpjname += "_shared";
- gpjname += projectSuffix();
- QFile f(gpjname);
- f.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate);
- QTextStream t(&f);
- t << "#!gbuild\n"
- "[Program]\n"
- "\t-A libINTEGRITY.so\n"
- "\t-A libc.so\n"
- "\t-A libscxx.so\n"
- "\t-A libQtCore.so\n"
- "\t-e __ghsbegin_text\n"
- "\t-startfile=-\n"
- "\t:syslibraries=-\n"
- "\t-Onolink\n";
- t << "\t-o lib" << strtarget << ".so\n";
- t << "\t-l" << strtarget << "\n";
- t << "\t-extractall=-l" << strtarget << "\n";
- t << "\t:outputDir=work/" << filename.section(QDir::separator(), 0, -1).remove(".gpj") << "\n";
- t << strtarget << "_shared.ld\n";
- t << "$(__OS_DIR)/intlib/sharedobjbssinit.c\n";
- t.flush();
-
- QFile fl(strtarget + "_shared.ld");
- fl.open(QIODevice::WriteOnly | QIODevice::Text | QIODevice::Truncate);
- QTextStream tl(&fl);
- tl << "CONSTANTS {\n"
- " __INTEGRITY_MinPageAlign = 16K\n"
- " __INTEGRITY_MaxPageAlign = 16K\n"
- " __INTEGRITY_LibCBaseAddress = \n";
- tl << dllbase << "\n";
- tl << "}\n"
- "-sec\n"
- "{\n"
- " .picbase __INTEGRITY_LibCBaseAddress :\n"
- " .text :\n"
- " .syscall :\n"
- " .intercall :\n"
- " .interfunc :\n"
- " .secinfo :\n"
- " .rodata align(16) :\n"
- " .fixaddr :\n"
- " .fixtype :\n"
- " .rombeg :\n"
- " .textchecksum :\n"
- " // The above sections may be large. Leave a bigger gap for large pages.\n"
- " .pidbase align(__INTEGRITY_MaxPageAlign) :\n"
- " .sdabase :\n"
- " .data :\n"
- " .toc :\n"
- " .opd :\n"
- " .datachecksum :\n"
- " .bss align(__INTEGRITY_MinPageAlign) :\n"
- " .heap :\n"
- "}\n";
- tl.flush();
- dllbase += DLLOFFSET;
- }
-
- QTextStream t(&Option::output);
- QString primaryTarget(project->values("QMAKE_CXX").at(0).toQString());
-
- pathtoremove += QDir::separator();
- filename.remove(qmake_getpwd());
-
- //HEADER
- t << "#!gbuild\n";
-
- /* find the architecture out of the compiler name */
- if (filename.endsWith("projects.gpj")) {
- primaryTarget.remove(0, 5);
- t << "macro QT_BUILD_DIR=%expand_path(.)\n";
- t << "macro __OS_DIR=" << project->values("INTEGRITY_DIR").first() << "\n";
- t << "primaryTarget=" << primaryTarget << "_integrity.tgt\n";
- t << "customization=util/integrity/qt.bod\n";
- }
- /* project type */
- if (project->first("TEMPLATE") == "app") {
- t << "[Program]\n";
- if (isnativebin) {
- t << "\t:binDir=bin\n";
- t << "\t-o " << strtarget << "\n";
- } else {
- t << "\t:binDirRelative=.\n";
- t << "\t-o " << strtarget << "_app\n";
- }
- } else if (project->first("TEMPLATE") == "lib") {
- t << "[Library]\n";
- t << "\t:binDir=lib\n";
- t << "\t-o lib" << strtarget << ".a\n";
- } else if (project->first("TEMPLATE") == "subdirs")
- t << "[Project]\n";
- else
- t << project->first("TEMPLATE") << "\n";
-
- /* compilations options */
- t << "\t:sourceDir=.\n";
-
- t << "\t:outputDir=work" << relpath << "\n";
- if (filename.endsWith("projects.gpj")) {
- t << "\t:sourceDir=work\n";
- t << "\t-Iwork\n";
- t << "\t-Llib\n";
- t << "\t";
- const ProStringList &l = project->values("QMAKE_CXXFLAGS");
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- if ((*it).startsWith("-"))
- t << "\n\t" << (*it);
- else
- t << " " << (*it);
- }
- t << "\n";
- }
- t << "\n";
-
- t << varGlue("DEFINES", "\t-D", "\n\t-D", "\n");
-
- t << "\t-I.\n\t-I" << specdir() << "\n";
- t << varGlue("INCLUDEPATH", "\t-I", "\n\t-I", "\n");
- t << "\t--cxx_include_directory .\n\t--cxx_include_directory " << specdir() << "\n";
- t << varGlue("INCLUDEPATH", "\t--cxx_include_directory ", "\n\t--cxx_include_directory ", "\n");
-
- if (project->first("TEMPLATE") == "app") {
- /* include linker flags if it's an application */
- static const char * const src[] = { "QMAKE_LFLAGS", "QMAKE_LIBS", "LIBS", 0 };
- for (int i = 0; src[i]; i++) {
- /* skip target libraries for native tools */
- if (isnativebin && (i == 0))
- continue;
- t << "\t";
- const ProStringList &l = project->values(src[i]);
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- if ((*it).startsWith("-"))
- t << "\n\t" << (*it);
- else
- t << " " << (*it);
- }
- t << "\n";
- }
- }
-
- /* first subdirectories/subprojects */
- {
- const ProStringList &l = project->values("SUBDIRS");
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- QString gpjname((*it).toQString());
- /* avoid native tools */
- if (nativebins.contains(gpjname.section("_", -1)))
- continue;
- const ProKey skey(*it + ".subdir");
- if (!project->first(skey).isEmpty())
- gpjname = project->first(skey).toQString();
- else
- gpjname.replace("_", QDir::separator());
- gpjname += QDir::separator() + gpjname.section(QDir::separator(), -1);
- gpjname += projectSuffix();
- /* make relative */
- if (!project->values("QT_SOURCE_TREE").isEmpty()) {
- gpjname.replace(project->values("QT_SOURCE_TREE").first() + QDir::separator(), "");
- }
- t << gpjname << "\n";
- }
- }
-
- {
- const ProStringList &l = project->values("RESOURCES");
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- QString tmpstr((*it).toQString());
- tmpstr.remove(pathtoremove);
- t << tmpstr << "\t[Qt Resource]\n";
- tmpstr = tmpstr.section(".", -2, -1).section(QDir::separator(), -1);
- tmpstr.remove(".qrc");
- t << "\t-name " << tmpstr << "\n";
- tmpstr.insert(tmpstr.lastIndexOf(QDir::separator()) + 1, "qrc_");
- tmpstr.append(".cpp");
- t << "\t-o work/" << tmpstr << "\n";
- }
- }
- {
- const ProStringList &l = project->values("FORMS");
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- QString tmpstr((*it).toQString());
- tmpstr.remove(pathtoremove);
- t << tmpstr << "\t[Qt Dialog]\n";
- tmpstr = tmpstr.section(".", 0, 0).section(QDir::separator(), -1);
- tmpstr.insert(tmpstr.lastIndexOf(QDir::separator()) + 1, "ui_");
- tmpstr.remove(".ui");
- tmpstr.append(".h");
- t << "\t-o work/" << tmpstr << "\n";
- }
- }
-
- /* source files for this project */
- static const char * const src[] = { "HEADERS", "SOURCES", 0 };
- for (int i = 0; src[i]; i++) {
- const ProStringList &l = project->values(src[i]);
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- if ((*it).isEmpty())
- continue;
- /* native tools aren't preprocessed */
- if (!isnativebin)
- t << writeOne((*it).toQString(), pathtoremove);
- else
- t << (*it).toQString().remove(pathtoremove) << "\n";
- }
- }
- t << "\n";
-
- {
- const ProStringList &l = project->values("GENERATED_SOURCES");
- for (ProStringList::ConstIterator it = l.begin(); it != l.end(); ++it) {
- t << "work/" << (*it).toQString().section(QDir::separator(), -1) << "\n";
- }
- }
-
- return true;
-}
-
-QString GBuildMakefileGenerator::writeOne(QString filename, QString pathtoremove)
-{
- QString s("");
- s += filename.remove(pathtoremove);
- if (filename.endsWith(Option::h_ext.first())) {
- QString corename(filename.section(QDir::separator(), -1));
- corename.remove(Option::h_ext.first());
- corename.append(Option::cpp_ext.first());
- corename.prepend(Option::h_moc_mod);
- s += "\t[MOC/Qt Header]\n";
- s += "\t-o ";
- s += "work/";
- s += corename;
- s += "\n";
- } else if (filename.section(QDir::separator(), -1).startsWith("qrc_")) {
- QString tmpstr(filename.section("/", -1).section(".", 0, -1).remove("qrc_").remove(".cpp"));
- s += "\n\t:depends=";
- s += tmpstr;
- s += ".qrc";
- s += "\n";
- } else if (filename.endsWith(Option::cpp_ext.first())) {
- QString tmpstr(filename.section("/", -1));
- QString filepath(pathtoremove);
- if (!project->values("QT_SOURCE_TREE").isEmpty()) {
- filepath.remove(project->first("QT_SOURCE_TREE").toQString());
- filepath.remove(0, 1);
- }
- s += "\n\t:preexecShellSafe='${QT_BUILD_DIR}/bin/moc ";
- s += "-nn ";
- s += varGlue("DEFINES", "-D", " -D", " ");
- s += varGlue("INCLUDEPATH", "-I", " -I", " ");
- s += filepath;
- s += filename;
- s += " -o ";
- tmpstr.replace(Option::cpp_ext.first(), Option::cpp_moc_ext);
- s += "work/";
- s += tmpstr;
- s += "\n";
- } else
- s += "\n";
- return s;
-}
-
-bool
-GBuildMakefileGenerator::openOutput(QFile &file, const QString &build) const
-{
- Q_UNUSED(build)
- debug_msg(1, "file is %s", file.fileName().toLatin1().constData());
- QFileInfo fi(file);
- if (fi.filePath().isEmpty())
- file.setFileName(qmake_getpwd() + QDir::separator() + file.fileName());
- if (!file.fileName().endsWith(projectSuffix())) {
- QString outputName(file.fileName());
- outputName += QDir::separator();
- outputName += fileInfo(project->projectFile()).baseName();
- outputName += projectSuffix();
- file.setFileName(outputName);
- }
- debug_msg(1, "file is %s", file.fileName().toLatin1().constData());
- bool ret = MakefileGenerator::openOutput(file, QString());
- return ret;
-}
-
-QT_END_NAMESPACE
diff --git a/qmake/generators/integrity/gbuild.h b/qmake/generators/integrity/gbuild.h
deleted file mode 100644
index 2223975011..0000000000
--- a/qmake/generators/integrity/gbuild.h
+++ /dev/null
@@ -1,66 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2014 Digia Plc and/or its subsidiary(-ies).
-** Contact: http://www.qt-project.org/legal
-**
-** This file is part of the qmake application of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL21$
-** Commercial License Usage
-** Licensees holding valid commercial Qt licenses may use this file in
-** accordance with the commercial license agreement provided with the
-** Software or, alternatively, in accordance with the terms contained in
-** a written agreement between you and Digia. For licensing terms and
-** conditions see http://qt.digia.com/licensing. For further information
-** use the contact form at http://qt.digia.com/contact-us.
-**
-** GNU Lesser General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU Lesser
-** General Public License version 2.1 or version 3 as published by the Free
-** Software Foundation and appearing in the file LICENSE.LGPLv21 and
-** LICENSE.LGPLv3 included in the packaging of this file. Please review the
-** following information to ensure the GNU Lesser General Public License
-** requirements will be met: https://www.gnu.org/licenses/lgpl.html and
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Digia gives you certain additional
-** rights. These rights are described in the Digia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef GBUILD_H
-#define GBUILD_H
-
-#include "makefile.h"
-
-QT_BEGIN_NAMESPACE
-
-class GBuildMakefileGenerator : public MakefileGenerator
-{
- virtual bool write();
-
- QString projectSuffix() const { return QString(".gpj"); };
- QString writeOne(QString filename, QString pathtoremove = "");
-
-public:
- GBuildMakefileGenerator();
- ~GBuildMakefileGenerator();
-
- virtual bool supportsMetaBuild() { return false; }
- virtual bool openOutput(QFile &, const QString &) const;
-protected:
- bool doPrecompiledHeaders() const { return false; }
- virtual bool doDepends() const { return true; }
- ProStringList nativebins;
-
-};
-
-inline GBuildMakefileGenerator::~GBuildMakefileGenerator()
-{ }
-
-QT_END_NAMESPACE
-
-#endif // GBUILD_H
diff --git a/qmake/generators/metamakefile.cpp b/qmake/generators/metamakefile.cpp
index 990bee6091..76e987fc62 100644
--- a/qmake/generators/metamakefile.cpp
+++ b/qmake/generators/metamakefile.cpp
@@ -412,7 +412,6 @@ QT_BEGIN_INCLUDE_NAMESPACE
#include "msvc_nmake.h"
#include "msvc_vcproj.h"
#include "msvc_vcxproj.h"
-#include "gbuild.h"
QT_END_INCLUDE_NAMESPACE
MakefileGenerator *
@@ -452,8 +451,6 @@ MetaMakefileGenerator::createMakefileGenerator(QMakeProject *proj, bool noIO)
mkfile = new VcxprojGenerator;
else
mkfile = new NmakeMakefileGenerator;
- } else if(gen == "GBUILD") {
- mkfile = new GBuildMakefileGenerator;
} else {
fprintf(stderr, "Unknown generator specified: %s\n", gen.toLatin1().constData());
}
diff --git a/qmake/qmake.pri b/qmake/qmake.pri
index 57dcbb0586..782151d763 100644
--- a/qmake/qmake.pri
+++ b/qmake/qmake.pri
@@ -12,7 +12,6 @@ SOURCES += project.cpp property.cpp main.cpp \
generators/win32/msvc_vcproj.cpp \
generators/win32/msvc_vcxproj.cpp \
generators/win32/msvc_objectmodel.cpp generators/win32/msbuild_objectmodel.cpp \
- generators/integrity/gbuild.cpp \
generators/win32/cesdkhandler.cpp
HEADERS += project.h property.h \
@@ -26,7 +25,6 @@ HEADERS += project.h property.h \
generators/win32/msvc_vcproj.h \
generators/win32/msvc_vcxproj.h \
generators/win32/msvc_objectmodel.h generators/win32/msbuild_objectmodel.h \
- generators/integrity/gbuild.h \
generators/win32/cesdkhandler.h
bootstrap { #Qt code