254 Commits

Author SHA1 Message Date
Chris Johns
56e8d80055 config: Add support to build qemu.
Qemu requires gettext, glib, libffi, and pixman. DTC is built
as a submodule.

On Mavrick provide a pkg-config command so avoid needing a pkgconfig.
The one here is only just good enough to work.

Provide an internal autotools build including libtool so qemu can
be built from git.
2014-02-04 18:38:18 +11:00
Chris Johns
edf60aa82f sb: Do not assume the src is valid. 2014-02-04 18:35:33 +11:00
Chris Johns
53b918e698 sb: Fix downloader url parsing and add submodule git support.
Split the URL by line breaks into separate requests.

With git reset the repo with each run. First perform a hard reset
to remove any local patches and then switch back to master incase
the repo was left on a branch or a detached head.
2014-02-04 18:23:08 +11:00
Chris Johns
5601b9ccae sb: Add submodule support to the git support. 2014-02-04 18:22:03 +11:00
Chris Johns
7c30130169 darwin: Default to cc and c++ for Mavrick. 2014-02-04 18:20:40 +11:00
Chris Johns
00693f913b config: Default _internal_autotools_path to nil when not an internal build. 2014-02-04 18:19:19 +11:00
Chris Johns
04aadb631d Check the user's PATH environment variable. 2014-01-30 14:04:42 +11:00
Chris Johns
1e7eb16aec Fix the link path for GDB expat test.
If doing a Cxc add the ld flags to the CC to allow the expat to
build. This broke with the change to support clang on Mavrick.
2014-01-07 22:30:41 +11:00
Nick Withers
b7a13abd4b FreeBSD 10 and above no longer have /usr/bin/cvs - allow it to be found in the path (e.g., from a devel/cvs ports install) 2014-01-07 10:24:56 +11:00
Chris Johns
822592530c Use the --jobs option. 2013-12-14 12:15:14 +11:00
Chris Johns
46dcbfc2bc Catch the OSError on the process failing. 2013-11-10 12:30:23 +11:00
Chris Johns
ce0f7a19c3 Add the host to the build set tar file name if no target.
If building a host package use the host as the package tar file
name prefix. This means the tar files will all start with the host
name.
2013-11-10 09:55:37 +11:00
Chris Johns
4a59eb9562 Split FLAGS into CFLAGS and LDFLAGS.
The clang compiler on MacOS 10.9 (Maverick) generated a warning when
LDFLAGS where passed on the command line. This change lets the RSB
build RTEMS GCC tools on a clean Maverick install.
2013-10-26 10:12:15 +11:00
Chris Johns
3bc9e31df6 Search any path for CVS on Darwin (MacOS). 2013-10-26 10:11:30 +11:00
Chris Johns
b8b0f4452f config: Use ${build_top} to change dir to parent.
On NetBSD with ksh changing into a symlink made PWD the link's
target path so a 'cd ..' returned you to that parent and not
the parent you started from. Record the build top and then
change back to that path.

Change the package names to the actual packages and remove the
extra directory in the build tree. This makes the paths simpler.
2013-09-10 16:19:20 +10:00
Chris Johns
ef58e217ed sb: Add include/lib paths for /usr/pkg to NetBSD. 2013-09-10 16:18:52 +10:00
Chris Johns
b843e623c4 sb: Do no install with a Cxc build. 2013-09-05 16:32:50 +10:00
Chris Johns
2802080426 sb: Do not create a build set tar file on error.
If creating build set tar files and using --keep-going do not create
the tar file if any part of the set build fails.
2013-09-04 08:45:04 +10:00
Chris Johns
7a691b8280 sb: Fix the config _parse args. 2013-09-03 08:50:06 +10:00
Chris Johns
845e92ffce sb: Fix nesting if statements.
Nesting if statements did not correctly process the contents of
the nested if script. This change makes the processing uniform
across all the logic stages.
2013-09-03 08:30:26 +10:00
Chris Johns
72f89c5fc9 sb: Output the new info message.
With the set builder add nesting count support.
2013-09-03 08:29:36 +10:00
Chris Johns
348e4983df sb: Add options log_info.
Provide a log_info method for the options class to log the command line
and the python version string.
2013-09-03 07:59:38 +10:00
Ivan Temp
a4937d8585 sb: Add NetBSD support. 2013-09-01 08:39:12 +10:00
Chris Johns
d4fa10150a sb: Fixed the errors as found by Gedare. 2013-08-27 12:21:14 +10:00
Chris Johns
5e536f822d sb: Import log for the copytree warnings. 2013-08-27 07:48:10 +10:00
Chris Johns
2f4bd55055 config: Fix the empty case of extra gcc options. 2013-08-27 07:47:44 +10:00
Chris Johns
f4e903532d config: Fix the use of the extra options. 2013-08-22 13:24:14 +10:00
Chris Johns
85007c35d1 sb: Fix copy_tree coping links on Linux
Overwriting symlinks did not work on Linux. This change manages the
coping of links with special code. The copy worked on FreeBSD.
2013-08-22 11:38:44 +10:00
Chris Johns
75aa2db1c6 config: Add support for extra GCC configure options. 2013-08-22 11:38:10 +10:00
Chris Johns
869b8a6bd3 sb: Fix the copy tree.
Python's distutil's copy tree code maintains a cache of directories
created so deleting a tree a different way then coping the same
tree results in an error because the destination folders in the
tree are not present because distutils thinks they exist. The
solution is to implement a copy tree function.
2013-08-15 12:20:29 +10:00
Chris Johns
27d6ea0dd1 config: Add support for iconv encodings.
Turn off iconv support for the AVR because the arrays are too big.
2013-08-14 14:06:30 +10:00
Chris Johns
76d4899a27 config: Control languages from the command line --with/--without options.
Allow a user to include languages by --with-objc or --without-cxx.
2013-08-14 13:56:24 +10:00
Chris Johns
6201a0dd88 config: Add the iconv encodings to the defaults. 2013-08-14 13:55:33 +10:00
Chris Johns
ff0fc8eed0 config: Check the path for a valid autoconf. 2013-08-08 11:43:52 +10:00
Chris Johns
01b28157ff SB: Fix internal build and mailing. Output errors to the log. 2013-07-21 10:22:03 +10:00
Chris Johns
6d32fe7eb0 CONFIG: PR 2127 - Build fails on Linux.
Fix shell tests where '==' was used rather than '='.
2013-07-21 08:55:11 +10:00
Chris Johns
ebf8a1f0f8 Automtically build the Autotools to bootstrap RTEMS.
This changes adds support to build the autotools if the host installed
version is not a suitable version. Autoconf and automake have hard coded
references to the install prefix and host tools and this makes it impossible
to relocate, that is use in any path other than the install prefix. To
bootstrap automake you need to first build a suitable autoconf and with that
you can built automake for the install prefix. The other complication is
not referencing the install prefix in the path when building in the RSB.
Having the install prefix in the path can result in strange issues appearing
such as gcc using a new assembler feature not present in an older assember
installed under the install prefix.

The process is to build the autotools using an install prefix to an
internal path inside the RSB temporary path and to use that autoconf
to build the version for the install prefix. The internal install
prefix version is also used to bootstrap RTEMS.
2013-07-16 10:02:41 +10:00
Chris Johns
2626dbae7c Fix the Cxc build configuration for the DTC tool. 2013-07-14 09:11:21 +10:00
Chris Johns
80d5fde1ba Remove /usr/local from build flags. They cause problems with BFD etc. 2013-06-17 10:09:24 +10:00
Dhananjay Balan
54a2a5f304 distro_ver fails on Non-LSB distros. 2013-06-04 08:39:46 +10:00
Chris Johns
d925ea3c48 Align the 4.8 and 4.5 configurations with the gcc-common. 2013-05-20 17:19:47 +10:00
Chris Johns
54d142615c Clean the paths passed as args. 2013-05-17 12:52:22 +10:00
Chris Johns
b83b596ba0 Fix the core detection on Linux. 2013-05-16 15:34:00 +10:00
Chris Johns
1b40c77e7b Make outputing errors optional. 2013-05-15 13:23:41 +10:00
Chris Johns
db65c6aaf1 Support Canadian cross builds on FreeBSD (and other hosts).
Set up the rules to manage the separate host and build setting to
allow a Canadian cross to complete.

Update the scripts to move the build directory and host/build
flags into the defaults so they are common for all build
configurations.
2013-05-15 12:15:14 +10:00
Chris Johns
8a1e7a0ab0 Add better error messages. 2013-05-14 11:12:54 +10:00
Chris Johns
1a56a07605 Add bare/config and move the source-builder/config to it.
Rework the RTEMS build set files to point to the new location.

Move the files into devel, this follows the ports naming in
FreeBSD.

Update the macros, defaults, and options to support this.
2013-05-14 11:08:02 +10:00
Chris Johns
04f447f979 Show a trace message on copy when with --dry-run. 2013-05-13 14:47:14 +10:00
Chris Johns
ca047f1e12 Better error message on rmdir failure. 2013-05-13 14:46:30 +10:00
Chris Johns
5237f1ccb7 Fix support for Windows (MinGW) native builds using MSYS.
Fix paths that need to be coverted to host format.

The shell expansion needs to invoke a shell on Windows as cmd.exe
will not work.

Munch the paths into smaller sizes for Windows due to the limited
path size.
2013-05-13 14:44:49 +10:00