# $Id: makeConfigAppInclude.pl,v 1.1.1.1 2000/04/05 07:33:44 janousch Exp $ eval 'exec perl -S $0 ${1+"$@"}' # -*- Mode: perl -*- if $running_under_some_shell; # makeConfigAppInclude.pl use Cwd; $arch = $ARGV[0]; $outfile = $ARGV[1]; $top = $ARGV[2]; unlink("${outfile}"); open(OUT,">${outfile}") or die "$! opening ${outfile}"; print OUT "#Do not modify this file.\n"; print OUT "#This file is created during the build.\n"; @files =(); push(@files,"$top/config/RELEASE"); push(@files,"$top/config/RELEASE.${arch}"); foreach $file (@files) { if (-r "$file") { open(IN, "$file") or die "Cannot open $file\n"; while ($line = ) { next if ( $line =~ /\s*#/ ); chomp($line); $_ = $line; #the following looks for # prefix = $(macro)post ($prefix,$macro,$post) = /(.*)\s*=\s*\$\((.*)\)(.*)/; if ($macro eq "") { # true if no macro is present # the following looks for # prefix = post ($prefix,$post) = /(.*)\s*=\s*(.*)/; } else { $base = $applications{$macro}; if ($base eq "") { #print "error: $macro was not previously defined\n"; } else { $post = $base . $post; } } $applications{$prefix} = $post; if ( -d "$post") { #check that directory exists print OUT "\n"; if ( -d "$post/bin/$arch") { #check that directory exists print OUT "${prefix}_BIN = $post/bin/${arch}\n"; } if ( -d "$post/lib/$arch") { #check that directory exists print OUT "${prefix}_LIB = $post/lib/${arch}\n"; } if ( -d "$post/include") { #check that directory exists print OUT "EPICS_INCLUDES += -I$post/include\n"; } if ( -d "$post/dbd") { #check that directory exists print OUT "EPICS_DBDFLAGS += -I $post/dbd\n"; } } } close IN; } } close OUT;