added C++BuilderX support (disabled by default)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@24319 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -3,6 +3,30 @@
|
|||||||
|
|
||||||
<bakefile-gen>
|
<bakefile-gen>
|
||||||
|
|
||||||
|
<!--
|
||||||
|
Formats listed here are not generated by default. To enable them, either
|
||||||
|
remove them from the <disable-formats> directive below or create
|
||||||
|
Bakefiles.local.bkgen file in this directory and add <enable-formats>
|
||||||
|
into it:
|
||||||
|
<?xml version="1.0" ?>
|
||||||
|
<bakefile-gen>
|
||||||
|
<enable-formats>dmars</enable-formats>
|
||||||
|
</bakefile-gen>
|
||||||
|
|
||||||
|
Reasons why these formats are disabled (and so not in CVS):
|
||||||
|
|
||||||
|
dmars - In beta testing, will be added when it stabilizes.
|
||||||
|
cbuilderx - Generated projects are too bad to be included in CVS. Please
|
||||||
|
*do not* enable this format until FIXMEs in .bkl files related
|
||||||
|
to cbuilderx are addressed. In particular, the project must
|
||||||
|
be placed into build/msw(?) directory and store object files
|
||||||
|
in its subdirectory and it must copy setup.h as others do.
|
||||||
|
cbx_unix - Doesn't intergrate well and won't be used by most Unix people.
|
||||||
|
-->
|
||||||
|
|
||||||
|
<disable-formats>dmars,cbx_unix,cbuilderx</disable-formats>
|
||||||
|
|
||||||
|
|
||||||
<!-- These wildcards match all .bkl files in wxWindows tree: -->
|
<!-- These wildcards match all .bkl files in wxWindows tree: -->
|
||||||
<input>
|
<input>
|
||||||
wx.bkl
|
wx.bkl
|
||||||
@@ -23,14 +47,28 @@
|
|||||||
</input>
|
</input>
|
||||||
|
|
||||||
<!-- List of output formats to generate: -->
|
<!-- List of output formats to generate: -->
|
||||||
<add-formats>autoconf,borland,mingw,msvc,msvc6prj,watcom</add-formats>
|
<add-formats>
|
||||||
|
autoconf,borland,dmars,mingw,msvc,msvc6prj,watcom,cbuilderx,cbx_unix
|
||||||
|
</add-formats>
|
||||||
|
|
||||||
<del-formats files="../../samples/*.bkl">autoconf,msvc6prj</del-formats>
|
<del-formats files="../../samples/*.bkl">
|
||||||
<del-formats files="../../demos/*.bkl">msvc6prj</del-formats>
|
autoconf,msvc6prj,cbuilderx,cbx_unix
|
||||||
<del-formats files="../../samples/html/html_samples.bkl">msvc6prj</del-formats>
|
</del-formats>
|
||||||
<del-formats files="../../samples/mobile/mobile_samples.bkl">msvc6prj</del-formats>
|
<del-formats files="../../demos/*.bkl">
|
||||||
<del-formats files="../../samples/opengl/opengl_samples.bkl">msvc6prj</del-formats>
|
msvc6prj,cbuilderx,cbx_unix
|
||||||
<del-formats files="../../utils/*.bkl">msvc6prj</del-formats>
|
</del-formats>
|
||||||
|
<del-formats files="../../samples/html/html_samples.bkl">
|
||||||
|
msvc6prj,cbuilderx,cbx_unix
|
||||||
|
</del-formats>
|
||||||
|
<del-formats files="../../samples/mobile/mobile_samples.bkl">
|
||||||
|
msvc6prj,cbuilderx,cbx_unix
|
||||||
|
</del-formats>
|
||||||
|
<del-formats files="../../samples/opengl/opengl_samples.bkl">
|
||||||
|
msvc6prj,cbuilderx,cbx_unix
|
||||||
|
</del-formats>
|
||||||
|
<del-formats files="../../utils/*.bkl">
|
||||||
|
msvc6prj,cbuilderx,cbx_unix
|
||||||
|
</del-formats>
|
||||||
|
|
||||||
|
|
||||||
<!-- Default flags (for all formats and bakefiles): -->
|
<!-- Default flags (for all formats and bakefiles): -->
|
||||||
@@ -59,9 +97,19 @@
|
|||||||
<add-flags files="wx.bkl" formats="msvc6prj">
|
<add-flags files="wx.bkl" formats="msvc6prj">
|
||||||
-o../msw/wx.dsw
|
-o../msw/wx.dsw
|
||||||
</add-flags>
|
</add-flags>
|
||||||
|
<add-flags files="wx.bkl" formats="cbuilderx">
|
||||||
|
-o../../wx.cbx
|
||||||
|
</add-flags>
|
||||||
<add-flags files="../../contrib/build/*/*.bkl" formats="autoconf">
|
<add-flags files="../../contrib/build/*/*.bkl" formats="autoconf">
|
||||||
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/Makefile.in
|
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/Makefile.in
|
||||||
</add-flags>
|
</add-flags>
|
||||||
|
<add-flags files="../../contrib/build/*/*.bkl" formats="cbx_unix">
|
||||||
|
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT)Unix.cbx
|
||||||
|
</add-flags>
|
||||||
|
<!-- FIXME: don't do this once it is possible (new CBX version) -->
|
||||||
|
<add-flags files="../../contrib/build/*/*.bkl" formats="cbuilderx">
|
||||||
|
-o../../contrib/src/$(INPUT_FILE_BASENAME_NOEXT)/$(INPUT_FILE_BASENAME_NOEXT).cbx
|
||||||
|
</add-flags>
|
||||||
<add-flags files="../../contrib/build/*/*.bkl"
|
<add-flags files="../../contrib/build/*/*.bkl"
|
||||||
formats="mingw,borland,dmars,watcom,msvc,msvc6prj">
|
formats="mingw,borland,dmars,watcom,msvc,msvc6prj">
|
||||||
-DSRCDIR=../../src/$(INPUT_FILE_BASENAME_NOEXT)
|
-DSRCDIR=../../src/$(INPUT_FILE_BASENAME_NOEXT)
|
||||||
|
@@ -157,7 +157,13 @@
|
|||||||
<set var="CFG_NAME_PART">
|
<set var="CFG_NAME_PART">
|
||||||
$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
$(PORTNAME)$(WXUNIVNAME)$(WXUNICODEFLAG)$(WXDEBUGFLAG)$(WXDLLFLAG)$(CFG)
|
||||||
</set>
|
</set>
|
||||||
<set var="OBJS" make_var="1">$(COMPILER)_$(CFG_NAME_PART)</set>
|
<set var="OBJS" make_var="1">
|
||||||
|
<if cond="FORMAT!='cbuilderx'">$(COMPILER)_$(CFG_NAME_PART)</if>
|
||||||
|
<!-- FIXME: waiting for removal after CBX has better ../ dirs
|
||||||
|
support -->
|
||||||
|
<if cond="FORMAT=='cbuilderx'">build_cbx_$(CFG_NAME_PART)</if>
|
||||||
|
</set>
|
||||||
|
|
||||||
<set var="BUILDDIR">$(OBJS)</set>
|
<set var="BUILDDIR">$(OBJS)</set>
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
@@ -295,10 +301,10 @@
|
|||||||
<!-- system libraries on windows: -->
|
<!-- system libraries on windows: -->
|
||||||
<if cond="FORMAT!='autoconf'">
|
<if cond="FORMAT!='autoconf'">
|
||||||
<sys-lib>$(UNICOWS_LIB)</sys-lib>
|
<sys-lib>$(UNICOWS_LIB)</sys-lib>
|
||||||
<if cond="COMPILER=='bcc'">
|
<if cond="FORMAT=='borland'">
|
||||||
<sys-lib>ole2w32</sys-lib>
|
<sys-lib>ole2w32</sys-lib>
|
||||||
</if>
|
</if>
|
||||||
<if cond="COMPILER!='bcc'">
|
<if cond="FORMAT!='bcc'">
|
||||||
<sys-lib>kernel32</sys-lib>
|
<sys-lib>kernel32</sys-lib>
|
||||||
<sys-lib>user32</sys-lib>
|
<sys-lib>user32</sys-lib>
|
||||||
<sys-lib>gdi32</sys-lib>
|
<sys-lib>gdi32</sys-lib>
|
||||||
@@ -315,7 +321,7 @@
|
|||||||
<sys-lib>advapi32</sys-lib>
|
<sys-lib>advapi32</sys-lib>
|
||||||
<sys-lib>wsock32</sys-lib>
|
<sys-lib>wsock32</sys-lib>
|
||||||
</if>
|
</if>
|
||||||
<if cond="COMPILER=='vc' or COMPILER=='bcc'">
|
<if cond="FORMAT=='vc' or FORMAT=='bcc'">
|
||||||
<sys-lib>oleacc</sys-lib>
|
<sys-lib>oleacc</sys-lib>
|
||||||
</if>
|
</if>
|
||||||
</if>
|
</if>
|
||||||
|
@@ -243,6 +243,13 @@ Set the version of your Mingw installation here.
|
|||||||
<set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set>
|
<set var="EXTRACFLAGS">$(GCCFLAGS) -DHAVE_W32API_H</set>
|
||||||
</if>
|
</if>
|
||||||
|
|
||||||
|
<if cond="FORMAT=='cbuilderx'">
|
||||||
|
<set var="EXTRACFLAGS">
|
||||||
|
<if cond="COMPILER=='gcc'">-DHAVE_W32API_H</if>
|
||||||
|
</set>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
|
||||||
<!-- ================================================================== -->
|
<!-- ================================================================== -->
|
||||||
<!-- Project files - hardcode some defaults -->
|
<!-- Project files - hardcode some defaults -->
|
||||||
<!-- ================================================================== -->
|
<!-- ================================================================== -->
|
||||||
@@ -262,6 +269,19 @@ Set the version of your Mingw installation here.
|
|||||||
</if>
|
</if>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- FIXME:
|
||||||
|
C++BuilderX supports only wxMSW, monolithic (sic!) static build
|
||||||
|
and the project can't be put into build/msw and store objects in
|
||||||
|
build/msw/something. This *must* be fixed! -->
|
||||||
|
<if cond="FORMAT=='cbuilderx'">
|
||||||
|
<set var="WXUNIV">0</set>
|
||||||
|
<set var="MONOLITHIC">1</set>
|
||||||
|
<set var="SRCDIR">.</set>
|
||||||
|
<set var="TOP_SRCDIR">$(SRCDIR)/$(WXTOPDIR)</set>
|
||||||
|
<set var="SHARED">0</set>
|
||||||
|
</if>
|
||||||
|
|
||||||
|
|
||||||
<!-- DigitalMars make is braindead, it doesn't have conditional
|
<!-- DigitalMars make is braindead, it doesn't have conditional
|
||||||
processing: -->
|
processing: -->
|
||||||
<if cond="FORMAT=='dmars'">
|
<if cond="FORMAT=='dmars'">
|
||||||
|
@@ -16,4 +16,13 @@
|
|||||||
<default-filename>xxx.spec</default-filename>
|
<default-filename>xxx.spec</default-filename>
|
||||||
</format>
|
</format>
|
||||||
|
|
||||||
|
<format id="cbx_unix">
|
||||||
|
<description>
|
||||||
|
C++BuilderX projects for Unix (use configure)
|
||||||
|
</description>
|
||||||
|
<default-filename>
|
||||||
|
$(os.path.splitext(os.path.basename(INPUT_FILE))[0])Unix.cbx
|
||||||
|
</default-filename>
|
||||||
|
</format>
|
||||||
|
|
||||||
</bakefile-manifest>
|
</bakefile-manifest>
|
||||||
|
@@ -3,3 +3,4 @@ This directory contains misc Bakefile backends that are wxWindows-specific:
|
|||||||
|
|
||||||
wx24dsp - generates wx2.4-compatible VC++ project file (src/wxWindows.dsp)
|
wx24dsp - generates wx2.4-compatible VC++ project file (src/wxWindows.dsp)
|
||||||
rpmspec - generates part of .spec files with list of wxBase headers
|
rpmspec - generates part of .spec files with list of wxBase headers
|
||||||
|
cbx_unix - Borland C++BuilderX project files for configure-based build
|
||||||
|
@@ -12,6 +12,11 @@ makefiles, e.g. wx24dsp or rpmspec ones.
|
|||||||
<include file="win32.bkl"/>
|
<include file="win32.bkl"/>
|
||||||
|
|
||||||
<define-rule name="__fake">
|
<define-rule name="__fake">
|
||||||
|
<template>
|
||||||
|
<__fake_hook/>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<define-tag name="app-type"/>
|
||||||
<define-tag name="sources"/>
|
<define-tag name="sources"/>
|
||||||
<define-tag name="libname"/>
|
<define-tag name="libname"/>
|
||||||
<define-tag name="dllname"/>
|
<define-tag name="dllname"/>
|
||||||
@@ -49,6 +54,11 @@ makefiles, e.g. wx24dsp or rpmspec ones.
|
|||||||
<define-tag name="sys-lib"/>
|
<define-tag name="sys-lib"/>
|
||||||
<define-tag name="library"/>
|
<define-tag name="library"/>
|
||||||
<define-tag name="command"/>
|
<define-tag name="command"/>
|
||||||
|
<define-tag name="mac-res"/>
|
||||||
|
<define-tag name="win32-res"/>
|
||||||
|
<define-tag name="is-phony"/>
|
||||||
|
|
||||||
|
<define-tag name="__fake_hook"/>
|
||||||
</define-rule>
|
</define-rule>
|
||||||
|
|
||||||
<define-rule name="exe" extends="__fake"/>
|
<define-rule name="exe" extends="__fake"/>
|
||||||
|
21
build/bakefiles/formats/cbx_unix.bkl
Normal file
21
build/bakefiles/formats/cbx_unix.bkl
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
<?xml version="1.0" ?>
|
||||||
|
<!-- $Id$ -->
|
||||||
|
|
||||||
|
<makefile>
|
||||||
|
|
||||||
|
<include file="__fake.bkl"/>
|
||||||
|
<set var="COMPILER">vc</set>
|
||||||
|
|
||||||
|
|
||||||
|
<define-tag name="__fake_hook" rules="__fake">
|
||||||
|
<set var="type" overwrite="0">fake</set>
|
||||||
|
</define-tag>
|
||||||
|
|
||||||
|
<define-tag name="__fake_hook" rules="exe">
|
||||||
|
<set var="type">exe</set>
|
||||||
|
</define-tag>
|
||||||
|
|
||||||
|
<output file="$(OUTPUT_FILE)" writer="cbx_unix.empy"/>
|
||||||
|
<set var="FORMAT_OUTPUT_VARIABLES">type</set>
|
||||||
|
|
||||||
|
</makefile>
|
77
build/bakefiles/formats/cbx_unix.empy
Normal file
77
build/bakefiles/formats/cbx_unix.empy
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!--C++BuilderX Project-->
|
||||||
|
<project>
|
||||||
|
<property category="build.config" name="active" value="0"/>
|
||||||
|
<property category="build.config" name="count" value="1"/>
|
||||||
|
<property category="build.config" name="excludedefaultforzero" value="0"/>
|
||||||
|
<property category="build.config.0" name="builddir" value="Debug"/>
|
||||||
|
<property category="build.config.0" name="key" value="Debug_Build"/>
|
||||||
|
<property category="build.config.0" name="name" value="Debug Build"/>
|
||||||
|
<property category="build.config.0" name="settings.MinGW" value="default;debug"/>
|
||||||
|
<property category="build.config.0" name="settings.gnuc++" value="default;debug"/>
|
||||||
|
<property category="build.config.0" name="settings.intellinia32" value="default;debug"/>
|
||||||
|
<property category="build.config.0" name="settings.mswin32" value="default;debug"/>
|
||||||
|
<property category="build.config.0" name="type" value="Toolset"/>
|
||||||
|
<property category="build.config.1" name="key" value="Release_Build"/>
|
||||||
|
<property category="build.config.1" name="name" value="Release Build"/>
|
||||||
|
<property category="build.config.1" name="settings.MinGW" value="default;release"/>
|
||||||
|
<property category="build.config.1" name="settings.gnuc++" value="default;release"/>
|
||||||
|
<property category="build.config.1" name="settings.intellinia32" value="default;release"/>
|
||||||
|
<property category="build.config.1" name="settings.mswin32" value="default;release"/>
|
||||||
|
<property category="build.config.1" name="type" value="Toolset"/>
|
||||||
|
<property category="build.node" name="type" value="CBMakefileProjectType"/>
|
||||||
|
<property category="build.platform" name="active" value="linux"/>
|
||||||
|
<property category="build.platform" name="linux.Debug_Build.toolset" value="gnuc++"/>
|
||||||
|
<property category="build.platform" name="linux.Release_Build.toolset" value="gnuc++"/>
|
||||||
|
<property category="build.platform" name="linux.default" value="gnuc++"/>
|
||||||
|
<property category="build.platform" name="linux.gnuc++.enabled" value="1"/>
|
||||||
|
<property category="build.platform" name="linux.mswin32.enabled" value="0"/>
|
||||||
|
<property category="build.platform" name="linux.win32b.enabled" value="0"/>
|
||||||
|
<property category="build.platform" name="solaris.default" value="gnuc++"/>
|
||||||
|
<property category="build.platform" name="solaris.enabled" value="0"/>
|
||||||
|
<property category="build.platform" name="win32.default" value="MinGW"/>
|
||||||
|
<property category="build.platform" name="win32.enabled" value="0"/>
|
||||||
|
<property category="cbproject" name="lastnodeid" value="4"/>
|
||||||
|
<property category="cbproject" name="version" value="X.1.0"/>
|
||||||
|
<property category="classbrowser" name="enable" value="0"/>
|
||||||
|
<property category="classbrowser" name="parser.cpp.skip_standard_directories" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.I.arg.1" value="/usr/include"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.I.arg.2" value="/usr/include/g++-3"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.I.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.MD.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.O0.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.c.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.g.arg" value="2"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.g.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++compile" name="option.o.enabled" value="1"/>
|
||||||
|
<property category="linux.Debug_Build.gnuc++.g++link" name="option.o.enabled" value="1"/>
|
||||||
|
<property category="linux.gnuc++.Debug_Build" name="saved" value="1"/>
|
||||||
|
<property category="makefileproject" name="makefile.ID.1" value="1"/>
|
||||||
|
<property category="makefileproject" name="makefile.list.1" value="Makefile"/>
|
||||||
|
<property category="makefiletarget" name="makefile.1.params" value="-f Makefile"/>
|
||||||
|
<property category="makefiletarget" name="makefile.1.target.list.1" value="all"/>
|
||||||
|
<property category="makefiletarget" name="makefile.1.target.list.2" value="clean"/>
|
||||||
|
<property category="runtime" name="ConfigurationCount" value="@(len([t for t in targets if t.type=='exe'])-1)"/>
|
||||||
|
@{
|
||||||
|
ALL_EXES = [x for x in targets if x.type=='exe']
|
||||||
|
if len(ALL_EXES) == 1:
|
||||||
|
DEFAULT_EXE = 0
|
||||||
|
else:
|
||||||
|
DEFAULT_EXE = -1
|
||||||
|
}@
|
||||||
|
<property category="runtime" name="DefaultConfiguration" value="@DEFAULT_EXE"/>
|
||||||
|
@[for i in range(0,len(ALL_EXES))]@
|
||||||
|
<property category="runtime.@i" name="BuildTargetOnRun" value="com.borland.cbuilder.build.CBProjectBuilder$ProjectBuildAction;make"/>
|
||||||
|
<property category="runtime.@i" name="ConfigurationName" value="@ALL_EXES[i].id"/>
|
||||||
|
<property category="runtime.@i" name="RunnableType" value="com.borland.cbuilder.runtime.ExecutableRunner"/>
|
||||||
|
<property category="runtime.@i" name="native.exec.path" value="./@ALL_EXES[i].id"/>
|
||||||
|
<property category="runtime.@i" name="native.startdir.path" value="."/>
|
||||||
|
<property category="runtime.@i" name="native.target.override" value="1"/>
|
||||||
|
@[end for]@
|
||||||
|
<property category="unique" name="id" value="4"/>
|
||||||
|
<node name="console" type="NavigationDirectory">
|
||||||
|
<property category="directorynode" name="showSubdirectories" value="1"/>
|
||||||
|
<property category="directorynode" name="url" value="."/>
|
||||||
|
<property category="unique" name="id" value="1"/>
|
||||||
|
</node>
|
||||||
|
</project>
|
Reference in New Issue
Block a user