common/autoconf/autogen.sh

Mon, 29 Jun 2020 21:30:12 +0100

author
andrew
date
Mon, 29 Jun 2020 21:30:12 +0100
changeset 2537
a8da94d779b3
parent 2212
dd97daafa80b
child 2316
64a3eeabf6e5
permissions
-rw-r--r--

Merge

ohair@494 1 #!/bin/bash
ohair@425 2 #
ohair@425 3 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
ohair@425 4 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
ohair@425 5 #
ohair@425 6 # This code is free software; you can redistribute it and/or modify it
ohair@425 7 # under the terms of the GNU General Public License version 2 only, as
ohair@425 8 # published by the Free Software Foundation.
ohair@425 9 #
ohair@425 10 # This code is distributed in the hope that it will be useful, but WITHOUT
ohair@425 11 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
ohair@425 12 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
ohair@425 13 # version 2 for more details (a copy is included in the LICENSE file that
ohair@425 14 # accompanied this code).
ohair@425 15 #
ohair@425 16 # You should have received a copy of the GNU General Public License version
ohair@425 17 # 2 along with this work; if not, write to the Free Software Foundation,
ohair@425 18 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
ohair@425 19 #
ohair@425 20 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
ohair@425 21 # or visit www.oracle.com if you need additional information or have any
ohair@425 22 # questions.
ohair@425 23 #
ohair@425 24
kevinw@2212 25 generate_configure_script() {
kevinw@2212 26 # First create a header
kevinw@2212 27 cat > $1 << EOT
kevinw@2212 28 #!/bin/bash
kevinw@2212 29 #
kevinw@2212 30 # ##########################################################
kevinw@2212 31 # ### THIS FILE IS AUTOMATICALLY GENERATED. DO NOT EDIT. ###
kevinw@2212 32 # ##########################################################
kevinw@2212 33 #
kevinw@2212 34 EOT
kevinw@2212 35 # Then replace "magic" variables in configure.ac and append the output
kevinw@2212 36 # from autoconf. $2 is either cat (just a no-op) or a filter.
kevinw@2212 37 cat $script_dir/configure.ac | sed -e "s|@DATE_WHEN_GENERATED@|$TIMESTAMP|" | \
kevinw@2212 38 eval $2 | ${AUTOCONF} -W all -I$script_dir - >> $1
kevinw@2212 39 rm -rf autom4te.cache
kevinw@2212 40 }
kevinw@2212 41
erikj@458 42 script_dir=`dirname $0`
erikj@458 43
erikj@458 44 # Create a timestamp as seconds since epoch
ohair@478 45 if test "x`uname -s`" = "xSunOS"; then
tbell@571 46 TIMESTAMP=`date +%s`
tbell@571 47 if test "x$TIMESTAMP" = "x%s"; then
tbell@571 48 # date +%s not available on this Solaris, use workaround from nawk(1):
tbell@571 49 TIMESTAMP=`nawk 'BEGIN{print srand()}'`
tbell@571 50 fi
ohair@478 51 else
ohair@478 52 TIMESTAMP=`date +%s`
ohair@478 53 fi
erikj@458 54
ohair@494 55 if test "x$CUSTOM_CONFIG_DIR" = "x"; then
kevinw@2212 56 topdir=`cd $script_dir/../.. >/dev/null && pwd`
kevinw@2212 57 custom_script_dir="$topdir/jdk/make/closed/autoconf"
ohair@478 58 else
ohair@478 59 custom_script_dir=$CUSTOM_CONFIG_DIR
ohair@478 60 fi
ohair@478 61
ohair@478 62 custom_hook=$custom_script_dir/custom-hook.m4
ohair@478 63
tbell@674 64 AUTOCONF="`which autoconf 2> /dev/null | grep -v '^no autoconf in'`"
andrew@664 65
andrew@664 66 if test "x${AUTOCONF}" = x; then
kevinw@2212 67 echo "You need autoconf installed to be able to regenerate the configure script"
kevinw@2212 68 echo "Error: Cannot find autoconf" 1>&2
ohair@494 69 exit 1
ohair@494 70 fi
ohair@494 71
kevinw@2212 72 autoconf_version=`$AUTOCONF --version | head -1`
kevinw@2212 73 echo "Using autoconf at ${AUTOCONF} [$autoconf_version]"
kevinw@2212 74
kevinw@2212 75 echo "Generating generated-configure.sh"
kevinw@2212 76 generate_configure_script "$script_dir/generated-configure.sh" 'cat'
erikj@458 77
ohair@494 78 if test -e $custom_hook; then
ohair@478 79 # We have custom sources available; also generate configure script
ohair@478 80 # with custom hooks compiled in.
kevinw@2212 81 echo "Generating custom generated-configure.sh"
kevinw@2212 82 generate_configure_script "$custom_script_dir/generated-configure.sh" 'sed -e "s|#CUSTOM_AUTOCONF_INCLUDE|m4_include([$custom_hook])|"'
ohair@478 83 else
kevinw@2212 84 echo "(No custom hook found at $custom_hook)"
erikj@458 85 fi

mercurial