blob: 6acf9afe894fbf59ea64b6f7668afdeeb36796ca [file] [log] [blame]
xdc-G02 (corevers:; B:200,G:200,R:200)
eXpanDed C Tools (XDCtools)
This tree contains the RTSC build and configuration engines for
target content. The tree is used in XDCtools 3.5? product releases in
which all targets are 64-bit.
Librarian repo creation
The xdc.git repo was created to "track" the repo maintained at and was created as follows:
git clone --bare ssh:// xdc.git
cd xdc.git
git config remote.origin.fetch "+refs/heads/*:refs/heads/*"
o setup ssh to enable "git" from xlibrary as "dr" (if necessary)
cd ~xlibrary/.ssh
cp -f config-dr config
o fetch the latest changes from the Eclipse git server
cd xdc.git
git fetch
o Build this tree from Linux using standard SM-MAKE
# clone the tree and merge/review user content
ggentree -u xdc.git/
cd xdc-G??
# unzip from the last released tree
unzip ../xdc-G??/
# make sure the user email and name are your eclipse credentials
git merge origin/xdccore-G-dr
# build the tree using LSF to force older GLIBC to be used when
# linking Linux executables
SM-MAKE .clean
SM-MAKE .all-files >& Make.log
# update README
emacs README
git commit -a -m xdc-G??
# release the tree
greltree -m "something brief and meaningful"
o to make both the UNIX and PC sides, from a Linux workstation, go to the
top directory of the tree and type:
SM-MAKE .all-files
To clean the tree, type:
SM-MAKE .clean
o to build only packages in src/packages from scratch:
SM-MAKE .xdc-packages
o to build bundles:
SM-MAKE .bundles
o to run regressions:
SM-MAKE .regress
xdc.runtime Core functions allocObject and delistObject are not used, and
they might have never been used, so we removed them.
xdc.runtime module System was calling xdc.useModule on other modules in the
runtime package because these modules were considered always
necessary when the runtime was used, so System was picked as a
module that was always used to ensure that other necessary modules
are in the configuration. However, now we need to create a
configuration that will be minimal, so we are trying to come up
with a way to exclude Log, Diags, Assert, Main, Registry.
For that purpose, useModule calls are distributed to the modules
where they should have been in the first place, and also we are
using some modules conditionally.
Error has a new internal function policyLog that moves usage of
Log and Diags into the config C file, so that if Log and Diags are
not explicitly used by other modules, Error will not use them and
it will generate NOPs instead of calling Diags and Log functions.
Core has a new config 'noAsserts', which will be used only when
SYS/BIOS eliminates Asserts with a macro and the runtime modules
are recompiled at the config time with SYS/BIOS macros.
xdc.shelf antlr-tool doesn't run in JRE 9, so only for creating the grammar
we use JRE 7. Eventually, we should update to Antlr 3.5.2 and a
corresponding StringTemplate version