summaryrefslogtreecommitdiffstats
path: root/tools/update
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>2000-02-08 22:33:25 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>2000-02-08 22:33:25 +0000
commit70810dcd8970194d96f685ffe4af890911e273c5 (patch)
treecade3ccf39b9bcabc04e7b1ce9105a83f80b177d /tools/update
parenta976681e4754543618441a2a2e7b6def98e588fb (diff)
downloadrtems-70810dcd8970194d96f685ffe4af890911e273c5.tar.bz2
Patches rtems-rc-20000204-0.diff from Ralf Corsepius <corsepiu@faw.uni-ulm.de>
that contains: * Removes remaining (now illegal) references to $(SRC) from a couple of Makefile.ams * Removes duplicate AC_CONFIG_SUBDIRS macro from c/configure.in * Moves ENABLE_LIBCDIR into RTEMS_PROG_C[C|XX]_FOR_TARGET (hides LIBCDIR from most configure scripts, i.e. LIBCDIR becomes less visible) * Adds RTEMS_PROG_C[C|XX]_FOR_TARGET and RTEMS_CANONICALIZE_TOOLS to libbsp/*/configure.ins (A minor bug in previous implementations, which only has an impact when switching to GNU/Cygnus canonicalization) * Cleans up several bogus comments. * Removes MKLIB * Switches the version number to 4.5.0 (for testing version number handling)
Diffstat (limited to 'tools/update')
-rwxr-xr-xtools/update/cipolish261
-rw-r--r--tools/update/configure.in1
2 files changed, 186 insertions, 76 deletions
diff --git a/tools/update/cipolish b/tools/update/cipolish
index bd83aee275..c04e0c52c6 100755
--- a/tools/update/cipolish
+++ b/tools/update/cipolish
@@ -9,12 +9,155 @@
# acpolish <configure.in >configure.in~
# mv configure.in~ configure.in
#
-# ATTENTION: This file contains embedded tabs
-my $nl_seen = 0 ;
+# $Id$
+
+# find relative up-path to configure.in
+my $rtems_cfg = &find_file(".","VERSION");
+my $rtems_root = &find_root() ;
+$rtems_root =~ tr/\//\-/ ;
+my $rtems_name = "rtems" ;
+$rtems_name .= "-" . "$rtems_root" if (length($rtems_root) > 0 ) ;
+
+my @buffer = () ;
+
+while ( <> )
+{
+ push @buffer, "$_" ;
+}
+
+{
+ my @tbuf = () ;
+
+ foreach ( @buffer )
+ {
+ if ( /^#.*list.*Makefile.*$/o ) {}
+ elsif ( /^dnl[\s]+check.*target.*cc.*$/o ) {}
+ elsif ( /^[\s]*AC_CONFIG_AUX_DIR\(.*\)[\s]*$/o )
+ {
+ push @tbuf, "AC_CONFIG_AUX_DIR($rtems_cfg)\n" ;
+ }
+ elsif ( /^[\s]*RTEMS_TOP\(.*\)[\s]*$/o )
+ {
+ push @tbuf, "RTEMS_TOP($rtems_cfg)\n" ;
+ }
+ elsif ( /^[\s]*AM_INIT_AUTOMAKE\(.*\)[\s]*$/o )
+ {
+ push @tbuf, "AM_INIT_AUTOMAKE($rtems_name,\$RTEMS_VERSION,no)\n" ;
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_POSIX_API\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_ITRON_API\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_HWAPI\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_USE_MACROS\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_MULTIPROCESSING\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_RDBG\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s\t]*AC_SUBST\(RTEMS_USE_OWN_PDIR\)[\s]*$/o )
+ { # obsolete option
+ #remove the line
+ }
+ elsif ( /^[\s\t]*RTEMS_ENABLE_GMAKE_PRINT[ ]*$/o )
+ { # obsolete macro
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_HAS_NETWORKING\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_LIBC_DIR\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(PROJECT_ROOT\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*AC_SUBST\(RTEMS_GAS_CODE16\)[\s]*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*PROJECT_ROOT[\s]*=.*$/o )
+ {
+ #remove the line
+ }
+ elsif ( /^[\s]*(RTEMS_ENABLE_LIBCDIR).*$/o )
+ { #remove the line
+ &define_variable("$1","");
+ push @tbuf, "$_" ;
+ }
+ elsif ( /^[\s]*(RTEMS_PROG_CC_FOR_TARGET).*$/o )
+ {
+ &define_variable("$1","");
+ push @tbuf, "$_" ;
+ }
+ elsif ( /^[\s]*(RTEMS_PROG_CXX_FOR_TARGET).*$/o )
+ {
+ &define_variable("$1","");
+ push @tbuf, "$_" ;
+ }
+ else
+ {
+ push @tbuf, "$_" ;
+ }
+ } # foreach
+ @buffer = @tbuf ;
+}
+
+{
+ my @tbuf = () ;
+ foreach ( @buffer )
+ {
+ if ( /^[\s]*(RTEMS_ENABLE_LIBCDIR).*$/o )
+ {
+ if ( ( not defined $var_RTEMS_PROG_CC_FOR_TARGET )
+ and ( not defined $var_RTEMS_PROG_CXX_FOR_TARGET )
+ )
+ {
+ push @tbuf, "$_" ;
+ }
+ }
+ elsif ( /^AC_OUTPUT.*$/o )
+ {
+ push @tbuf, "# Explicitly list all Makefiles here\n" ;
+ push @tbuf, "$_" ;
+ }
+ else
+ {
+ push @tbuf, "$_" ;
+ }
+ }
+ @buffer = @tbuf ;
+}
+
+{ ## pretty print
+ my $out = join ('',@buffer) ;
+ $out =~ s/\s\#\n(\#\n)+/\n/g ;
+ $out =~ s/\n\n\#\n\n/\n/g ;
+ $out =~ s/\n\n[\n]*/\n\n/g ;
+ print $out ;
+}
+
+exit 1 ;
# find a relative up-path to a file $file, starting at directory $pre
-sub find_file
+sub find_file($$)
{
my $pre = $_[0] ;
my $file= $_[1] ;
@@ -42,86 +185,52 @@ sub find_file
die "Can't find file ${file}\n" ;
}
-# find relative up-path to configure.in
-my $rtems_cfg = find_file(".","VERSION");
+sub find_root()
+{
+ my $top_builddir = "." ;
+ my $subdir="";
+ my $pwd = `pwd`; chomp $pwd;
+ $pwd .= "/" ;
+ my $len ;
+ if ( -f "VERSION" ) { return $subdir ; }
+ my $i = rindex($pwd,'/');
-while( <> )
-{
- if ( /^[ ]*$/o )
- {
- $nl_seen = $nl_seen+1;
- }
+ $len = $i;
+ $pwd = substr($pwd,0,$len);
+ $i = rindex($pwd,'/');
+ $subdir = substr($pwd,$i+1,$len - 1);
+ $top_builddir = ".." ;
- if ( /^[ ]*AC_CONFIG_AUX_DIR\(.*\)[ ]*$/o )
- {
- print "AC_CONFIG_AUX_DIR($rtems_cfg)\n" ;
- }
- elsif ( /^[ ]*RTEMS_TOP\(.*\)[ ]*$/o )
- {
- print "RTEMS_TOP($rtems_cfg)\n" ;
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_POSIX_API\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_ITRON_API\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_HWAPI\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_USE_MACROS\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_MULTIPROCESSING\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_RDBG\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[\s\t]*AC_SUBST\(RTEMS_USE_OWN_PDIR\)[ ]*$/o )
- { # obsolete option
- #remove the line
- }
- elsif ( /^[\s\t]*RTEMS_ENABLE_GMAKE_PRINT[ ]*$/o )
- { # obsolete macro
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_HAS_NETWORKING\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_LIBC_DIR\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(PROJECT_ROOT\)[ ]*$/o )
+ while( -d "$top_builddir" )
{
- #remove the line
- }
- elsif ( /^[ ]*AC_SUBST\(RTEMS_GAS_CODE16\)[ ]*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*PROJECT_ROOT[ ]*=.*$/o )
- {
- #remove the line
- }
- elsif ( /^[ ]*$/o )
+ if ( -f "${top_builddir}/VERSION" )
+ {
+ return $subdir ;
+ }
+ $len=$i;
+ $pwd = substr($pwd,0,$len);
+ $i = rindex($pwd,'/');
+ $subdir = substr($pwd,$i+1,$len - 1) . "/$subdir";
+ $top_builddir .= "/.." ;
+ } ;
+ die "Can't find VERSION\n" ;
+}
+
+sub define_variable
+{
+ my ($name,$value) = @_ ;
+
+ if ( not defined ${"var_$name"} )
{
- print "$_" if $nl_seen < 2 ;
+# print STDERR "DEFINING $name = $value\n" ;
+ push @vars, "$name" ;
+ ${"var_$name"} = "$value" ;
}
else
{
- print "$_" ;
- $nl_seen = 0;
+# print STDERR "APPENDING <$name> <- <$value>\n" ;
+ ${"var_$name"} .= " $value" ;
}
-} # while
+}
-;1
diff --git a/tools/update/configure.in b/tools/update/configure.in
index 19eeaa03a4..395459f66b 100644
--- a/tools/update/configure.in
+++ b/tools/update/configure.in
@@ -18,6 +18,7 @@ RTEMS_PATH_PERL
AM_CONDITIONAL(PERL,test -n "$PERL")
RTEMS_TOOLPATHS
+# Explicitly list all Makefiles here
AC_OUTPUT(
Makefile
)