⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 autoreconf.in

📁 autoconf 2.59版,可用于redhat系统.用于编译原码,编写makefile文件.
💻 IN
📖 第 1 页 / 共 2 页
字号:
  # anyway we don't limit the generality, since... that's what  # autopoint does.  Actually, it is even more restrictive, as it  # greps for `^AM_GNU_GETTEXT_VERSION('.  We did this above, while  # scanning configure.ac.  if (!$uses_gettext)    {      verb "$configure_ac: not using Gettext";    }  elsif (!$install)    {      verb "$configure_ac: not running autopoint: --install not given";    }  else    {      xsystem "$autopoint";    }  # ----------------- #  # Running aclocal.  #  # ----------------- #  # Run it first: it might discover new macros to add, e.g.,  # AC_PROG_LIBTOOL, which we will trace later to see if Libtool is  # used.  #  # Always run it.  Tracking its sources for up-to-dateness is too  # complex and too error prone.  The best we can do is avoiding  # nuking the time stamp.  my $uses_aclocal = 1;  # Nevertheless, if aclocal.m4 exists and is not made by aclocal,  # don't run aclocal.  if (-f 'aclocal.m4')    {      my $aclocal_m4 = new Autom4te::XFile 'aclocal.m4';      $_ = $aclocal_m4->getline;      $uses_aclocal = 0	unless defined ($_) && /generated.*by aclocal/;    }  # If there are flags for aclocal in Makefile.am, use them.  my $aclocal_flags = '';  if ($uses_aclocal && -f 'Makefile.am')    {      my $makefile = new Autom4te::XFile 'Makefile.am';      while ($_ = $makefile->getline)	{	  if (/^ACLOCAL_[A-Z_]*FLAGS\s*=\s*(.*)/)	    {	      $aclocal_flags = $1;	      last;	    }	}    }  if (!$uses_aclocal)    {      verb "$configure_ac: not using aclocal";    }  else    {      # Some filesystems have sub-second time stamps, and if so we may      # run into trouble later, after we rerun autoconf and set the      # time stamps of input files to be no greater than aclocal.m4,      # because the time-stamp-setting operation (utime) has a      # resolution of only 1 second.  Work around the problem by      # ensuring that there is at least a one-second window before the      # time stamp of aclocal.m4t in which no file time stamps can      # fall.      sleep 1;      run_aclocal ($aclocal, $aclocal_flags);    }  # We might have to rerun aclocal if Libtool (or others) imports new  # macros.  my $rerun_aclocal = 0;  # ------------------------------- #  # See what tools will be needed.  #  # ------------------------------- #  # Perform a single trace reading to avoid --force forcing a rerun  # between two --trace, that's useless.  If there is no AC_INIT, then  # we are not interested: it looks like a Cygnus thingy.  my $aux_dir;  my $uses_gettext_via_traces;  my $uses_libtool;  my $uses_autoheader;  my @subdir;  verb "$configure_ac: tracing";  my $traces = new Autom4te::XFile    ("$autoconf"     . join (' --trace=', '',	     # If you change this list, update the	     # `Autoreconf-preselections' section of autom4te.in.	     'AC_CONFIG_AUX_DIR:AC_CONFIG_AUX_DIR:\$1',	     'AC_CONFIG_HEADERS',	     'AC_CONFIG_SUBDIRS:AC_CONFIG_SUBDIRS:\$1',	     'AC_INIT',	     'AC_PROG_LIBTOOL',	     'AM_GNU_GETTEXT',	    )     . ' |');  while ($_ = $traces->getline)    {      $aux_dir = $1                 if /AC_CONFIG_AUX_DIR:(.*)/;      $uses_autoconf = 1            if /AC_INIT/;      $uses_gettext_via_traces = 1  if /AM_GNU_GETTEXT/;      $uses_libtool = 1             if /AC_PROG_LIBTOOL/;      $uses_autoheader = 1          if /AC_CONFIG_HEADERS/;      push @subdir, split (' ', $1) if /AC_CONFIG_SUBDIRS:(.*)/;    }  # The subdirs are *optional*, they may not exist.  foreach (@subdir)    {      if (-d)	{	  verb "$configure_ac: subdirectory $_ to autoreconf";	  autoreconf ($_);	}      else	{	  verb "$configure_ac: subdirectory $_ not present";	}    }  # Gettext consistency checks...  error "$configure_ac: AM_GNU_GETTEXT is used, but not AM_GNU_GETTEXT_VERSION"    if $uses_gettext_via_traces && ! $uses_gettext;  error "$configure_ac: AM_GNU_GETTEXT_VERSION is used, but not AM_GNU_GETTEXT"    if $uses_gettext && ! $uses_gettext_via_traces;  # ---------------------------- #  # Setting up the source tree.  #  # ---------------------------- #  # libtoolize, automake --add-missing etc. will drop files in the  # $AUX_DIR.  But these tools fail to install these files if the  # directory itself does not exist, which valid: just imagine a CVS  # repository with hand written code only (there is not even a need  # for a Makefile.am!).  if (defined $aux_dir && ! -d $aux_dir)    {      verb "$configure_ac: creating directory $aux_dir";      mkdir $aux_dir	or error "cannot create $aux_dir: $!";    }  # -------------------- #  # Running libtoolize.  #  # -------------------- #  if (!$uses_libtool)    {      verb "$configure_ac: not using Libtool";    }  elsif ($install)    {      xsystem ($libtoolize);      $rerun_aclocal = 1;    }  else    {      verb "$configure_ac: not running libtoolize: --install not given";    }  # ------------------- #  # Rerunning aclocal.  #  # ------------------- #  # If we re-installed Libtool or Gettext, the macros might have changed.  # Automake also needs an up-to-date aclocal.m4.  if ($rerun_aclocal)    {      if (!$uses_aclocal)	{	  verb "$configure_ac: not using aclocal";	}      else	{	  run_aclocal ($aclocal, $aclocal_flags);	}    }  # ------------------ #  # Running autoconf.  #  # ------------------ #  # Don't try to be smarter than `autoconf', which does its own up to  # date checks.  #  # We prefer running autoconf before autoheader, because (i) the  # latter runs the former, and (ii) autoconf is stricter than  # autoheader.  So all in all, autoconf should give better error  # messages.  xsystem ($autoconf);  # -------------------- #  # Running autoheader.  #  # -------------------- #  # We now consider that if AC_CONFIG_HEADERS is used, then autoheader  # is used too.  #  # Just as for autoconf, up to date ness is performed by the tool  # itself.  #  # Run it before automake, since the latter checks the presence of  # config.h.in when it sees an AC_CONFIG_HEADERS.  if (!$uses_autoheader)    {      verb "$configure_ac: not using Autoheader";    }  else    {      xsystem ($autoheader);    }  # ------------------ #  # Running automake.  #  # ------------------ #  # Assumes that there is a Makefile.am in the topmost directory.  if (!-f 'Makefile.am')    {      verb "$configure_ac: not using Automake";    }  else    {      # We should always run automake, and let it decide whether it shall      # update the file or not.  In fact, the effect of `$force' is already      # included in `$automake' via `--no-force'.      xsystem ($automake);    }  # -------------- #  # Running make.  #  # -------------- #  if ($make)    {      if (!-f "config.status")	{	  verb "no config.status: cannot re-make";	}      else	{	  xsystem ("./config.status --recheck");	  xsystem ("./config.status");	  if (!-f "Makefile")	    {	      verb "no Makefile: cannot re-make";	    }	  else	    {	      xsystem ("make");	    }	}    }}# &autoreconf ($DIRECTORY)# ------------------------# Reconf the $DIRECTORY.sub autoreconf ($){  my ($directory) = @_;  my $cwd = cwd;  # The format for this message is not free: taken from Emacs, itself  # using GNU Make's format.  verb "Entering directory `$directory'";  chdir $directory    or error "cannot chdir to $directory: $!";  autoreconf_current_directory;  # The format is not free: taken from Emacs, itself using GNU Make's  # format.  verb "Leaving directory `$directory'";  chdir $cwd    or error "cannot chdir to $cwd: $!";}## ------ #### Main.  #### ------ ### When debugging, it is convenient that all the related temporary# files be at the same place.mktmpdir ('ar');$ENV{'TMPDIR'} = $tmp;parse_args;# Autoreconf all the given configure.ac.  A while loop, not a for,# since the list can change at runtime because of AC_CONFIG_SUBDIRS.for my $directory (@ARGV)  {    autoreconf ($directory);  }### Setup "GNU" style for perl-mode and cperl-mode.## Local Variables:## perl-indent-level: 2## perl-continued-statement-offset: 2## perl-continued-brace-offset: 0## perl-brace-offset: 0## perl-brace-imaginary-offset: 0## perl-label-offset: -2## cperl-indent-level: 2## cperl-brace-offset: 0## cperl-continued-brace-offset: 0## cperl-label-offset: -2## cperl-extra-newline-before-brace: t## cperl-merge-trailing-else: nil## cperl-continued-statement-offset: 2## End:

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -