Age | Commit message (Collapse) | Author |
|
Plus various minor build tweaks.
|
|
|
|
|
|
No longer call the script snippet LinuxX86Env.Set.sh,
MacOSXX86Env.Set.sh, etc, but always Env.Host.sh. No need for
source_soenv.sh then, which wouldn't have worked when cross-compiling
anyway.
(As before, when cross-compiling, the environment script snipppet for
the BUILD platform is called Env.Build.sh.)
|
|
|
|
|
|
Conflicts:
Repository.mk
RepositoryFixes.mk
configure
configure.in
set_soenv.in
solenv/config/sdev300.ini
solenv/gbuild/ComponentTarget.mk
solenv/gbuild/CppunitTest.mk
solenv/gbuild/CustomTarget.mk
solenv/gbuild/Deliver.mk
solenv/gbuild/Executable.mk
solenv/gbuild/JavaClassSet.mk
solenv/gbuild/Library.mk
solenv/gbuild/LinkTarget.mk
solenv/gbuild/StaticLibrary.mk
solenv/gbuild/TargetLocations.mk
solenv/gbuild/gbuild.mk
solenv/gbuild/platform/linux.mk
solenv/gbuild/platform/macosx.mk
solenv/gbuild/platform/solaris.mk
solenv/gbuild/platform/windows.mk
solenv/gbuild/platform/winmingw.mk
solenv/gbuild/templates/Executable.mk
solenv/gbuild/templates/Library.mk
solenv/inc/libs.mk
solenv/inc/unxobsd.mk
|
|
[hg:ffdb9023a592]
add source_soenv.sh: detects the platform and sources the right *Env.Set.sh.
bootstrap and the root GNUmakefile call source_soenv.sh.
|
|
|
|
Like in my previous plan, when cross-compiling we run the same
configure script separately for a native build configuration on the
build platform, in a temporary subdirectory.
Now use a fixed name "CONF-FOR-BUILD" for that subdirectory, so that
it is easy to edit out that path component from those build
environment variables that contain it.
Pass more of the native build environment variables up to the main
configure and propagate those to the build environment suffixed with
_FOR_BUILD: INPATH, OUTPATH OUTDIR, PATH, SOLARINC, SOLARLIB,
WORKDIR. Whether these all will actually be needed remains to be seen,
the set can be reduced later.
The environment setting file (*Env.Set.sh) for the native build is
copied here to the top directory under the name Env.Build.sh, and the
environment variables set in it that contain pathnames are modified to
point directly to this top directory, not the temporary CONF-FOR-BUILD
subdirectory.
When doing a cross-compiling build, we first do a build of the
necessary build-time tools for the build platform. This is done in the
same source tree. As the directories where build results are stored
include the platform specification (OUTPATH or in some cases INPATH),
there should be no clashes.
Don't run the download script from ./bootstrap(.1). We are running it
from Makefile already anyway often enough. This could also do with
some clean-up; the ./g -f clone phase is a bit slow, I am not sure if
it really is necessary every time? Also, we should not overwrite
ooo.lst if its contents isn't changing.
Use INPATH_FOR_BUILD in SOLARBINDIR so that the self-built tools like
idlc that we run are for the build platform, not the host
platform.
Attempt to get rid of the makefile.rc and makefile.mk files. Surely it
should be enough with just Makefile(.in) (and then GNUmakefile.mk for
its own so far special gbuild purposes). Instead of invoking dmake to
do "clean" or "distclean" from Makefile(.in), we already just do the
same directly in Makefile(.in). This way we don't need to first build
dmake in order to be able to do a make clean, which will then finally
clean out dmake again;)
Ideally I would like to get rid of bootstrap(.1), too. It should be
possible to merge its tasks into configure(.in) or Makefile(.in) as
appropriate.
And actually, maybe also what set_soenv(.in) does could well be merged
into configure(.in)?
|
|
|
|
Still a long way from working, of course.
The configure script now runs to finish on Linux with --host=mingw32.
It is no longer an error if Windows SDK or DirectX SDK are not found
by the logic in the configure script. It might well be that the user
has included relevant -I and -L flags in CC or CXX that makes the
compilations work anyway, or something. We should not try to be too
clever and try to predict how the compiler or linker work in the
configure script.
We now define the FOO_FOR_BUILD environment variables in set_soenv.in
even when not cross-compiling (identically as the plain FOO ones in
that case, obviously). This should make some makefiles and stuff that
build tools to run on the build host a bit simpler.
|
|
Except when cross-compiling from Windows (yeah... not bloody likely
anybody would be silly enough to do that...), then use the Cygwin gcc.
|
|
|
|
And some baby steps for cross-compiling for iOS in particular.
|
|
|
|
|
|
Previously if we aborted the download, it would delete dmake/dmake
which would then simply not be re-built, since we were checking for
the version in the solver in the bootstrap script - which would still
be there.
|
|
|
|
|
|
|
|
2009-01-19 15:47:39 +0100 rene r266508 : CWS-TOOLING: rebase CWS configuretoplevel to trunk@266428 (milestone: DEV300:m39)
2009-01-18 00:35:31 +0100 rene r266462 : #i10000# Mac OS X "of course" has other paths...
2009-01-16 13:24:23 +0100 rene r266415 : make OS2 use STLport...
2009-01-15 22:08:38 +0100 rene r266393 : STLport for FreeBSD
2009-01-15 01:23:51 +0100 rene r266333 : #i98048# harmonize STL default; default to *NOT* use STLport
2009-01-09 22:44:43 +0100 rene r266120 : #i97428# try to find out XLIB via pkg-config
2009-01-09 22:41:18 +0100 rene r266119 : #i97827# fail when we don't find make
2008-12-27 01:19:34 +0100 rene r265812 : add make (dis)clean; force /bin/sh as we source *Enc.Set.sh
2008-12-27 01:16:31 +0100 rene r265811 : fix makefile.rc for config.*/config_office move
2008-12-26 22:37:54 +0100 rene r265810 : #i91641# in some cases, we also need the -Xbootclasspath at the second javac call
2008-12-26 17:55:11 +0100 rene r265806 : actually commit Makefile.in
2008-12-25 19:24:24 +0100 rene r265803 : CWS-TOOLING: rebase CWS configuretoplevel to trunk@265758 (milestone: DEV300:m38)
2008-12-10 22:51:06 +0100 rene r265232 : #i96912# revert, cws swffixes02 has the right fix
2008-12-08 18:47:10 +0100 rene r265014 : xulrunner has no /plugin or /nspr
2008-12-08 17:51:28 +0100 rene r265013 : i96912# fix --with-system-mozilla
2008-12-05 13:05:55 +0100 rene r264903 : #i95339#
2008-12-04 17:53:53 +0100 rene r264865 : fix merge error
#i80238# add help for --with-epm
2008-12-04 17:44:28 +0100 rene r264864 : #i91641# fix build with JDKs already including a version of rhino which conflicts with our ancient one
2008-12-04 17:40:48 +0100 rene r264863 : i93429# check for sanity for expand.exe
2008-12-04 17:34:20 +0100 rene r264862 : config_office changes from m33 to m37
2008-12-04 17:28:55 +0100 rene r264861 : CWS-TOOLING: rebase CWS configuretoplevel to trunk@264807 (milestone: DEV300:m37)
2008-12-04 16:49:03 +0100 rene r264856 : fix cws. part 5
2008-12-04 16:45:06 +0100 rene r264855 : fix cws, part 4
2008-12-04 16:01:49 +0100 rene r264850 : fix cws, part 3
2008-12-04 15:14:12 +0100 rene r264848 : fix cws, part 2
|