|
From: | Michael Felt |
Subject: | Re: [netcf-devel] Re: netcf - anyone here for an "other operating system (but not (Solaris))" |
Date: | Wed, 2 Nov 2016 09:32:26 +0100 |
User-agent: | Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.0 |
On 01/11/2016 15:52, Eric Blake wrote:
I thought it was finding my m4 - but that was this code in autom4ate:# Skip lines that do not start with version.Indeed, and the autoconf manual warns about this:Sed scripts should not use branch labels longer than 7 characters and should not contain comments; AIX 5.3 sed rejects indented comments.Which AIX version are you using? Does the autoconf text need to be updated to mention a more modern version number? Meanwhile, it sounds like gnulib's bootstrap should be patched to avoid non-portable sed comments, then netcf updated to use the newer gnulib version.In the end, while it finds my GNU m4, it still complains that it is not a GNU m4. # $M4. my $m4 = $ENV{"M4"} || '/opt/bin/m4'; # Some non-GNU m4's don't reject the --help option, so give them /dev/null. fatal "need GNU m4 1.4 or later: $m4" if system "$m4 --help </dev/null 2>&1 | grep reload-state >/dev/null"; Since it was not installed the command failed - however, the fatal message was giving the correct command plus path - so I thought it was using it. A nice improvement for the tool autom4te would be to check "$m4" actually exists. And I shall update my packaging to make gnu.m4 a dependency (now that I know how to specify that). So, performed the following steps on a system with m4 plus all the autotools...Which version of GNU m4? There are some particular m4 bugs in some older versions that kill configure scripts, so the bootstrap script intentionally blacklists m4 versions with those bugs. This is the result: address@hidden:[/data/prj/aixtools]git clone git://git.fedorahosted.org/netcf.git netcf-0.2.8.2 Cloning into 'netcf-0.2.8.2'... remote: Counting objects: 2383, done. remote: Compressing objects: 100% (1969/1969), done. remote: Total 2383 (delta 1652), reused 579 (delta 358) Receiving objects: 100% (2383/2383), 502.07 KiB | 298.00 KiB/s, done. Resolving deltas: 100% (1652/1652), done. address@hidden:[/data/prj/aixtools]cd net*2 address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]vi bootstrap "bootstrap" 1026 lines, 31605 characters #! /bin/sh # Print a version string. scriptversion=2014-12-08.12; # UTC # Bootstrap this package from checked-out sources. # Copyright (C) 2003-2015 Free Software Foundation, Inc. # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program. If not, see <http://www.gnu.org/licenses/>. # Originally written by Paul Eggert. The canonical version of this # script is maintained as build-aux/bootstrap in gnulib, however, to # be useful to your project, you should place a copy of it under # version control in the top-level directory of your project. The # intent is that all customization can be done with a bootstrap.conf # file also maintained in your version control; gnulib comes with a # template build-aux/bootstrap.conf to get you started. / # i=$(($i+1)) done } get_version() { app=$1 $app --version >/dev/null 2>&1 || { $app --version; return 1; } $app --version 2>&1 | sed -n '# Move version to start of line. s/.*[v ]\([0-9]\)/\1/ # Skip lines that do not start with version. /^[0-9]/!d # Remove characters after the version. s/[^.a-z0-9-].*// # The first component must be digits only. s/^\([0-9]*\)[a-z-].*/\1/ #the following essentially does s/5.005/5.5/ s/\.0*\([1-9]\)/.\1/g p q' } check_versions() { "bootstrap" 1026 lines, 31495 characters address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]ls *.sh autobuild.sh autogen.sh address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]./autobuild.sh # Make things clean. test -n "$1" && RESULTS=$1 || RESULTS=results.log : ${AUTOBUILD_INSTALL_ROOT=$HOME/builder} test -f Makefile && make -k distclean || : rm -rf coverage test -d build && chmod -R u+rw build || : rm -rf build mkdir build cd build ../autogen.sh --prefix="$AUTOBUILD_INSTALL_ROOT" \ --enable-compile-warnings=yes running bootstrap... ./bootstrap: Bootstrapping from checked-out netcf sources... ./bootstrap: consider installing git-merge-changelog from gnulib ./bootstrap: getting gnulib files... Submodule 'gnulib' (git://git.sv.gnu.org/gnulib.git) registered for path '.gnulib' Cloning into '/data/prj/aixtools/netcf-0.2.8.2/.gnulib'... Submodule path '.gnulib': checked out '63881a60d67422cd7b83eae5ecabdc6b67ea7192' ./bootstrap: updating bootstrap and restarting... sed: # Skip lines that do not start with version. is not a recognized function. ./bootstrap: Error: 'autoconf' not found sed: # Skip lines that do not start with version. is not a recognized function. ./bootstrap: Error: 'automake' not found sed: # Skip lines that do not start with version. is not a recognized function. ./bootstrap: Error: 'gettext' not found sed: # Skip lines that do not start with version. is not a recognized function. ./bootstrap: Error: 'git' not found sed: # Skip lines that do not start with version. is not a recognized function. ./bootstrap: Error: 'perl' not found ./bootstrap: Please install the prerequisite programs Failed to bootstrap, please investigate. address@hidden:[/data/prj/aixtools/netcf-0.2.8.2] FYI: I shall manually edit the bootstrap (again) to not do the cp command and see how far I get. I know there are additional dependancies - I will not bother you with the details of getting those ready. Note: from above it should be clear that 'git' and 'autom4te' are functioning normally - and after the cp the 'sed' issue returns. FYI: AIX 6.1 address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]oslevel -s lslpp -w /usr/bin/sed 6100-09-04-1441 address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]lslpp -w /usr/bin/sed File Fileset Type ---------------------------------------------------------------------------- /usr/bin/sed bos.rte.edit File address@hidden:[/data/prj/aixtools/netcf-0.2.8.2]lslpp -L bos.rte.edit Fileset Level State Type Description (Uninstaller) ---------------------------------------------------------------------------- bos.rte.edit 6.1.9.30 C F Editors
|
[Prev in Thread] | Current Thread | [Next in Thread] |