summaryrefslogtreecommitdiffstats
path: root/c/build-tools (unfollow)
Commit message (Collapse)AuthorFilesLines
1999-07-23Moved to top level directory per patch rtems-rc-19990709-0.diff.gzJoel Sherrill17-4709/+0
from Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
1999-07-01Regenerated.Joel Sherrill1-232/+147
1999-06-02Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill2-4/+12
This patch fixes a nasty problem with build-tools/Makefile.am: When using install-sh instead of /usr/bin/install, only the first file gets installed during the preinstall stage.
1999-04-19Regenerated.Joel Sherrill1-0/+1
1999-04-19New files.Joel Sherrill2-0/+4
1999-04-19Regenerated.Joel Sherrill1-10/+12
1999-04-19Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de> to reorganizeJoel Sherrill30-4448/+300
the build-tools layout to simplify it. This script reorganizes and simpilfies the build-tools subdirectories. It moves all source-files and scripts to c/build-tools/. This will enable use to use this directory directly to refer to the build-tools instead of copying them around in a "preinstall" step in future. However, RTEMS's autoconf Makefile.ins and *.cfg files are not yet prepared to apply this approach and therefore require additional work.
1999-04-12Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill5-111/+104
This patch addresses a few minor issues and contains a few (minor) preparations for automake. * configure.in: Fix for handing c/src/tests subdirectory handling (FIX) * aclocal/rtems-top.m4: + Add TARGET_SUBDIR and --with-target-subdir (preparation of future enhancements for cross-compiling) + Activate RTEMS_ROOT handling (automake preparation) * automake/*.am: replace comments "#" with "##" so that comments won't get included into Makefile.in's anymore * c/update-tools/* automake support (NEW) * ./autogen update/enhancement (cf. ./autogen for details) After applying this patch please run: ./autogen cvs add c/update-tools/configure.in cvs add c/update-tools/Makefile.am cvs add c/update-tools/aclocal.m4
1999-03-31Regenerated.Joel Sherrill1-11/+40
1999-03-25Regenerated.Joel Sherrill1-40/+11
1999-03-24These files were not added as part of a recent patch fromJoel Sherrill1-0/+7
Ralf Corsepius <corsepiu@faw.uni-ulm.de>.
1999-03-23Automake II patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. EmailJoel Sherrill10-55/+242
description follows: Description: * automake for *all* tool subdirectories (Makefile.am, configure.in etc.) * autogen now also considers CONFIG_HEADER (generates stamp-h.ins and config.h.ins) * c/src/tests/tools/generic/difftest and c/src/tests/tools/generic/sorttimes generated by configure scripts * c/update-tools/ampolish, beautifier for Makefile.ams, similar to acpolish * rtems-polish.sh added to c/update-tools/ + ampolish support * New subdirectory ./automake, contains automake -Makefile fragments to support RTEMS make "debug, debug_install, profile, profile_install" for native Makefile.ams (== ignore these make targets). * aclocal/rtems-top.m4's RTEMS_TOP now reads the automake makefile variable VERSION from RTEMS ./VERSION file. * ./configure.in uses the macros from aclocal + support for the tools' configure scripts Remarks: * To run rtems-polish.sh, "cd <rtems-source-tree>; ./c/update-tools/rtems-polish.sh" * AFAIS, now all native subdirectories are converted to automake (Please drop me a note, if I forgot something). * Unless you notice something fatal, IMO the time has come for a public try (== snapshot). I do not intend to send more automake related patches within, say 2 weeks, to give these patches time to settle and to give me some time to think on how to continue. * The patch assumes installation to the new main installation directory [$(prefix)].
1999-03-19Incorporated automake I patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill12-94/+2766
This is the first real automake patch. It adds automake support to c/build-tools and cleans up a few minor issues. I consider this to be a testing probe to examine problems with automake. Therefore, this patch is just a more or less harmless replacement of the former RTEMS Makefiles and I expect it not last for long. If you want to give automake Makefiles a public try and if you want/need to learn about problems with it, then it's about time for a new snapshot, IMO. I may have screwed up something not directly related to automake, but I expect very few (none to be precise) problems with automake. However, somebody should at least try building on Cygwin. If you feel a bit more adventureous, then I also can continue to submit more patches. [FYI: I still have a couple of automake files laying around, but they need some cleanup before being submitted as patches. Now, that I am just into it, I'll perhaps submit another one tonight :-] After applying this patch (patch -p1 -E < <path-to>/rtems-rc-19990318-0), first run the "autogen" script from the toplevel source directory, before committing to CVS. Be careful about dependencies between Makefile.am and Makefile.ins when cutting tarballs from CVS. Makefile.ins are required to be newer than Makefile.ams, otherwise users would need to have automake, autoconf and perl. Some people recommend to "touch" all Makefile.in after checkout from cvs (cf. egcs/contrib/egcs_update). ATTENTION: * This patch adds a number of new files. * remove aclocal/exeext.m4 and aclocal/cygwin.m4 from CVS, They are now covered by autoconf-2.13`s AC_EXEEXT. Some features/side-effects which are probably interesting for you: In a configured build-tree "cd c/build-tools", then try * "make RTEMS_BSP=<bsp> install" * "make RTEMS_BSP=<bsp> dist"
1999-03-19Towards automake XI patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill5-17/+60
This patch is the most scary of all proposals I've been mailing to you this week until now. It consists of 3 parts: 1. a patch 2. a perl script (acpolish) 3. a shell script wrapper to invoke the perl-script. The perl-script reads in each Makefile.in and modifies them ("polishes/beautifies" them :-). These modifications are not easy to describe: Basically, it hard-codes some automake Makefile-variables and rules into RTEMS autoconf-Makefile.ins (Note: autoconf vs. automake!!) and converts some settings/variables to configure scripts' requirements (Yes, plural). E.g. it adds the automake standard variables $top_builddir and $subdir, adds dependency rules for automatic re-generation of Makefiles from Makefile.in, adds support variables for relative paths to multiple configure scripts etc. The patch is a one-line patch to enable the support of the new features added by acpolish. The shell script is a wrapper which pokes around inside of the source tree for Makefile.ins and invokes acpolish on all autoconf-Makefile.ins. acpolish is designed to be able to run several times on the same Makefile.in and may once become a more general tool to convert RTEMS Makefile.in to automake. Therefore, I'd like to keep it inside of source tree. (e.g. as contrib/acpolish or c/update-tools/acpolish). However, it doesn't make sense to export it outside of RTEMS. To apply this: cd <source-tree> patch -p1 -E < <path-to-patch>/rtems-rc-19990318-1.diff tar xzvf <path-to>/rtems-rc-polish.tar.gz ./rtems-polish.sh ./autogen Note: The path contrib/acpolish is hard-coded into rtems-polish.sh, if you decide to put it in an alternative place, please modify rtems-polish.sh to reflect this change. Later: cvs rm make/rtems.cfg (It isn't used anymore) cvs add contrib cvs add contrib/acpolish cvs commit I've tested this intensively, but naturally I can't exclude bugs. Ralf. PS.: Most probably, this is the last "Towards automake" patch. The next one probably will be a real automake patch.
1999-02-18Part of the automake VI patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill5-5/+15
> 5) rtems-rc-19990202-1.diff/reorg-install.sh > > reorg-install.sh fixes a Makefile variable name clash of RTEMS > configuration files and automake/autoconf standards. > Until now, RTEMS used $(INSTALL) for install-if-change. Automake and > autoconf use $(INSTALL) for a bsd-compatible install. As > install-if-change and bsd-install are not compatible, I renamed all > references to install-if-changed to $(INSTALL_CHANGED) and used > $(INSTALL) for bsd-install (==automake/autoconf standard). When > automake will be introduced install-if-change will probably be replaced > by $(INSTALL) and therefore will slowly vanish. For the moment, this > patch fixes a very nasty problem which prevents adding any automake file > until now (There are still more).
1998-10-14Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:Joel Sherrill11-23/+607
1. Rtems contains some perl scripts that use hard-coded paths to /usr/bin/perl or /usr/local/bin/perl I have already fixed these problems by adding some checks to configure.in. While doing this, I also cleaned up some more autoconf related problems for generating shell scripts. This patch might seem a bit scary to you, but I am quite confident it won't break something (I've been testing it for almost a week now, however it might introduce typos for a limited number configurations I don't have access to - But it shouldn't be a problem for you to test them :-). I expect to get this finished tonight, hence you will very likely have the patch when you get up tomorrow. Changes: * Check for PERL and disable all PERL scripts if perl wasn't found. * Generate all KSHELL-scripts with autoconf instead of make-script * Automatic dependency handling for autoconf generated KSHELL or PERL scripts (make/rtems.cfg) Notes: * this patch contains new files and deletes some other files. * The patch is relative to rtems-4.0.0-beta4 with my previous rtems-rc-981014-1.diff patch applied. Testing: I tested it with sh-rtems and posix under linux. Now all targets which are touched by this patch and which are not used while building for sh-rtems and posix still need to be tested. AFAIS, only the sparc/erc32 BSP should be affected by this criterion. And if you like to, you should also consider testing it on a Cygwin32 and a Solaris host for one arbitrary BSP.
1998-08-20Changed to avoid use of gets().Joel Sherrill2-16/+68
1998-08-19Patches from Ralf Corsepius <corsepiu@faw.uni-ulm.de> and myself toJoel Sherrill3-4/+4
make solaris target buildable. > 1. The ipc check fails since solaris does not define union semun. > The unix port code actually defines this type itself on solaris. Doing > the same thing lets it get configured. Then... > 2. It looks like BSDINSTALL is not defined properly. BSDINSTALL is defined in make/host.cfg.in as BSDINSTALL=@INSTALL@ @INSTALL@ is generated by autoconf's standard macro AC_PROG_INSTALL, which is widely used in almost any autoconf/automake configured package. In case there is really something wrong with it, then it must be considered a bug in autoconf. I can see a doubious fragment in AC_PROG_INSTALL, which is used when no appropriate bsd-install is found. Finally Ralf saw a problem with the find on solaris which I also saw and fixed.
1998-07-17Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Comments:Joel Sherrill3-6/+10
* Added support for bsd "install" ($(BSDINSTALL)) to host.cfg.in, i.e. the standard "install" program that most packages (including automake) use. In Makefiles outside of rtems, "install" normally is referenced by $(INSTALL), but rtems already uses $(INSTALL) for install-if-change, hence I used $(BSDINSTALL) instead to keep up backward compatibility. * Removed references to @GREP@ etc. from host.cfg.in, as configure.in doesn't check for them (Minor cleanup). * Added installation flags INST*FLAGS to host.cfg.in, which should replace -m XXXX flags for installation calls. *Changes to gcc.cfg to enable it to build host programs from multiple sources files. Should not disturb existing sources, but neccessary. * There was a not-so-minor bug in the configuration files: "make install" and "make debug_install" don't work in all subdirectories!! I tried to fix this by adding "install" to MTARGETS in main.cfg, which seems to solve most of the problems. But there still seem to be rare (?) cases where "make debug_install" still seems to have problems. * Changes to many host related tool-Makefiles to demonstrate the abilities of INST*FLAGS, BSDINSTALL and the new rules in gcc.cfg. ..of cause ... but BSDINSTALL is THE standard method to install files in most program packages besides rtems. This part of the patch fixes some minor protection setting problems, but doesn't support TARGET_VARIANTS NOTE: I hope you will like the BSDINSTALL, INST*FLAGS stuff. It is a step to get rid of "install-if-change" and to rely on a more standard installation procedure. If you don't like BSDINSTALL, removing it from the patch isn't difficult- just grep for BSDINSTALL and replace BSDINSTALL with INSTALL or MKDIR. FINALLY: I still have another patch pending (well, not a complete patch yet, it's a partial patch to demonstrate the principle), which adds automatic rebuilding of files generated by autoconf/configure. At the moment I don't dare to submit it, because integrating this patch would require to modify all Makefile.ins because we'd need to add a new "include " line to each Makefile.in.
1998-06-27Monstrous patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. I haveJoel Sherrill2-3/+8
made no attempt to divide the comments up and place them with just the appropriate files. Here is an excerpt from Ralf's email: Changes including comments on changes I made after cycling through all the targets: * Added ranlib support. Now all targets use "ranlib" instead of "ar -s" to build an index for a library. If ranlib isn't detected during configuration, check if ar -s is working and try "ar -s" instead of * Removed $(XXX_FOR_TARGET) from make/target.cfg.in, use $(XXX) instead now. * gcc-target-default.cfg: LINK_XXXX-defines reworked to solve the -l problem under posix (cf gcc-target-default.cfg) * rtems-glom replaced by Makefile-rules inside of the wrapup/Makefile.in that has been using rtems-glom until now. * Removed CCC and friends in gcc-target-default.cfg, as they have been breaking CXX support. * Removed CONFIG.$(TARGET_ARCH).CC lines from several custom/*.cfg files, because this is now set in custom/default.cfg. * Added aclocal/ar-s.m4, check whether "ar -s" is working * Added aclocal/cygwin.m4 and aclocal/exeext.m4. * Reworked aclocal/canonicalize-tools.m4: Added ar -s check; fixes for problems when XXX_FOR_TARGET is given via environment variables (didn't work for gcc until now), adding cygwin check, improved autoconf-cache handling. * Removed -l from make rule dependencies. LINK_LIBS is now allowed to contain -L and -l. LINK_OBJS and LINK_FILES must not contain -L or -l. gcc28 make-exe rules now link using $(LINK_OBJS) $(LINK_LIBS) => Almost all custom/*.cfg are modified. This is very likely to break something because of typos or having missed to edit a file. Open problems, known bugs, things I didn't do: * custom/p4000.cfg seems to be out of date and requires to be reviewed. (JRS NOTE: It is subordinate p4650 and p4600 -- both of which build ok after minor changes.) * custom/psim.cfg needs to be reviewed, I added some changes to it, I am insecure about. (JRS NOTE: psim had a minor problem endif/endef swapped but runs fine.) * rtems-glom.in can now be removed. * gcc*.cfg files "make depend" rules don't honor language specific flags (e.g CXXFLAGS is ignored for *.cc) - Nothing to worry about now, but may cause problems for hosts/targets not using gcc or rtems-add-ons that use external packages. * AFAIS, the no_bsp BSP can't be build anymore, i.e. configure refused to configure for it whatever I tried. * The toplevel and toplevel+1 README files are quite out-dated * cygwin.m4 isn't of much use for rtems. In most cases (cf. aclocal/*.m4) it is worked around by directly using $host_os. I think I'll remove it soon after the next snapshot * Before release the cygwin patch needs to be tested under cygwin. I may have broken/missed something (esp. the sed-pattern to convert \\ into / may be broken). * You should try to build/run the posix-BSP under solaris - I don't expect problems, but I am not 100% sure, esp. with regard to ranlib/ar -s. * You should consider to convert all make/compilers/*.cfg files into make/compilers/*.cfg.in files and let autoconf generate the *.cfg. This may help getting rid of some if/then/else statements and help hard-coding some defines into those files in future and shouldn't disturb now. * Not having installed libc.a/libm.a on a host may still break building rtems, esp. when using -disable-gcc28 as the gcc27-configuration scheme directly accesses libc.a and libm.a. The problem should not appear when using gcc28 because it references libc/libm only through -lc and -lm which may be static or dynamic (I didn't test this). * shgen is not yet included (I didn't yet have enough time to integrate it). * I know about a few more configure-probs (esp. cross-checking --enable-* flags). + warn/refuse to configure when --enable-libcdir and --enable-gcc28 are given. + force --enable-libcdir when --disable-gcc28 is given * Replaced KSHELL with @KSH@ in some shell scripts generated by configure.in. * Added a dependency to aclocal/*.m4 in the toplevel Makefile => configure and aclocal.m4 will now be rebuild when any aclocal/*.m4 file is changed * Some changes to aclocal/gcc-pipe.m4 and aclocal/gcc-specs.m4 * Replaced i[[3456]]86-unknown-freebsd2.[[12]] with i[[3456]]86-*freebsd2.* in configure.in, as I suppose there might exist a variety of valid vendors (2nd field of the name-tripple) * Disabled override MAKEFLAGS in toplevel Makefile.in - Potential side-effects are not really clear to me. * In mvme162.cfg, $(LINK_LIBS) is missing in the CC line in gcc28's make-exe rule (yet another one I missed to edit). Just append $(LINK_LIBS) to the "CC" line, like I hopefully did to ALL other custom/*.cfg files. * the problem with mvme162lx.cfg is a follow-up problem of the mvme162.cfg-bug. * mvme162/console and idp/console had variables named Buffer which conflicted with similarly named variables in some tests.
1998-05-18Added proper reference now that Embedded Systems Programming's WWW siteJoel Sherrill2-2/+14
is available and has the code available.
1998-03-03Switched from "extern int errno" to "#include <errno.h>".Joel Sherrill6-6/+6
1998-02-07Should not install build-tools using target variant options.Joel Sherrill1-1/+1
1998-01-30Big patch form Ralf Corsepius described in this email:Joel Sherrill5-20/+10
Here is the result of my nightly work to get RTEMS_ROOT=$srcdir working with different shells and relative/absolute paths. What I did is relatively simple in principle: Instead of setting RTEMS_ROOT in configure.in and then let configure substitute @RTEMS_ROOT@ inside the Makefiles, I now let each Makefile set RTEMS_ROOT from each Makefile's @top_srcdir@ value. The difference is subtile, but with enormous side effects: - If RTEMS_ROOT is set in configure, then the same single value will be propagated to all Makefiles. This breaks using relative paths, as the relative path to the root of the source tree is used inside of all subdirectory Makefiles. - Now each Makefile.in sets RTEMS_ROOT = @top_srcdir@. top_srcdir is computed individually by configure for each single Makefile.in, hereby receiving the correct value, no matter if relative or absolute paths are used. To get this working, I needed to remove setting RTEMS_ROOT from target.cfg.in, because this overrides the value of RTEMS_ROOT from each individual Makefile. Furthermore, I removed RTEMS_CUSTOM from the Makefiles and replaced all "include $(RTEMS_CUSTOM)" directives with"include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP)". Perhaps you don't like this, but I think, to have one variable less is clearer and easier to understand than having several variables refering to the next one. I enclose a small patch to this mail, which - fixes the config.h problem (to finally clearify misunderstands) - removes assignment/subsitution of RTEMS_ROOT from configure.in - contains a workaround for the application Makefile's RTEMS_ROOT problem (reported by Eric) - removes some unused lines from the toplevel Makefile.in - removes assignment of RTEMS_ROOT from make/target.cfg.in
1998-01-26new fileJoel Sherrill1-0/+9
1998-01-23Solaris port updates from Chris JohnsJoel Sherrill4-4/+4
1998-01-21Added autoconf support for strerror/sys_errlist per Ralf Corsepius'Joel Sherrill9-53/+161
direction. This fixes a problem reported by Steve Evans of Radstone since he is using glibc2.
1998-01-21Corrected prototypes for main per Ralf Corsepius' report of warningsJoel Sherrill6-10/+24
generated when egcs is used with "-Wall -pedantic".
1998-01-20Removed CONFIG_DIR and PROJECT_HOME directories.Joel Sherrill1-1/+1
1998-01-16Ralf Corsepius reported a number of missing CVS Id's:Joel Sherrill3-1/+32
> RTEMS is under CVS control and has been since rtems 3.1.16 which was > around May 1995. So I just to add the $Id$. If you notice other files > with missing $Id$'s let me know. I try to keep w\up with it. Now that you have asked -- I'll attach a list of files lacking an RCS-Id to this mail. This list has been generated by a little sh-script I'll also enclose.
1997-12-10Modified a lot of files to take a first cut at supporting building fromJoel Sherrill5-8/+20
any directory in the build tree. The only variable which must be set before the command "gmake" is invoked is RTEMS_BSP (e.g. RTEMS_BSP=erc32).
1997-08-28Removed hackspecs.awk in move from -mrtems to -qrtems.Joel Sherrill1-2/+1
1997-04-01This set of changes is the build of what was required to convert toJoel Sherrill7-6/+166
GNU autoconf. This is the first large step in allowing an RTEMS user to perform a one-tree build (per crossgcc FAQ) including RTEMS in the build process. With this change RTEMS is configured in built in the same style as the GNU tools, yet retains the basic structure of its traditional Makefiles (ala Tony Bennett). Jiri Gaisler (jgais@wd.estec.esa.nl) deserves (and received) a big thank you for doing this. There are still issues to be resolved but as of this commit, all target which can be built on a linux host have been using a modified version of the source Jiri submitted. This source was merged and most targets built in the tree before this commit. There are some issues which remain to be resolved but they are primarily related to host OS dependencies, script issues, the use of gawk for hack_specs, and the dependence on gcc snapshots. These will be resolved.
1996-06-03added ifdef for sunos 4.x since it does not have strtoul.Joel Sherrill2-4/+12
1996-01-15updates from Tony Bennett for PA and UNIX portsJoel Sherrill6-64/+12
1995-12-19changes remerged after disk crash -- history lostJoel Sherrill4-0/+12
1995-10-06fixed missing CVS IDsJoel Sherrill5-0/+13
1995-10-06SPARC merged and successfully tested w/o interrupt supportJoel Sherrill4-0/+16
1995-10-06moved to new development machine and went to gcc 2.7.0Joel Sherrill4-0/+12
1995-09-29all targets compile .. tony's patches in placeJoel Sherrill2-2/+2
1995-09-27new programs addedJoel Sherrill3-1/+276
1995-09-11AddedJoel Sherrill1-0/+283
1995-07-26updates for msdos/go32 from Bryce CogswellJoel Sherrill3-0/+498
1995-05-31fixing revisionJoel Sherrill4-0/+12