common/autoconf/autogen.sh

Fri, 26 Oct 2012 14:29:57 -0700

author
ohair
date
Fri, 26 Oct 2012 14:29:57 -0700
changeset 494
e64f2cb57d05
parent 478
2ba6f4da4bf3
child 571
7a3c6ffdf1fb
permissions
-rw-r--r--

8000992: Update new build-infra makefiles
Summary: Build-infra project integration. Multiple authors on this work: erikj and ihse primarily, also changes from ohair, tbell, and dholmes. Special credit to ohstrom for his smartjavac work.
Reviewed-by: erikj, ihse, dholmes, tbell

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
erikj@458 25 script_dir=`dirname $0`
erikj@458 26
erikj@458 27 # Create a timestamp as seconds since epoch
ohair@478 28 if test "x`uname -s`" = "xSunOS"; then
ohair@478 29 # date +%s is not available on Solaris, use this workaround
ohair@478 30 # from http://solarisjedi.blogspot.co.uk/2006/06/solaris-date-command-and-epoch-time.html
ohair@478 31 TIMESTAMP=`/usr/bin/truss /usr/bin/date 2>&1 | nawk -F= '/^time\(\)/ {gsub(/ /,"",$2);print $2}'`
ohair@478 32 else
ohair@478 33 TIMESTAMP=`date +%s`
ohair@478 34 fi
erikj@458 35
ohair@494 36 if test "x$CUSTOM_CONFIG_DIR" = "x"; then
ohair@478 37 custom_script_dir="$script_dir/../../jdk/make/closed/autoconf"
ohair@478 38 else
ohair@478 39 custom_script_dir=$CUSTOM_CONFIG_DIR
ohair@478 40 fi
ohair@478 41
ohair@478 42 custom_hook=$custom_script_dir/custom-hook.m4
ohair@478 43
ohair@494 44 if test "x`which autoconf 2> /dev/null`" = x; then
ohair@494 45 echo You need autoconf installed to be able to regenerate the configure script
ohair@494 46 echo Error: Cannot find autoconf 1>&2
ohair@494 47 exit 1
ohair@494 48 fi
ohair@494 49
ohair@478 50 echo Generating generated-configure.sh
erikj@458 51 cat $script_dir/configure.ac | sed -e "s|@DATE_WHEN_GENERATED@|$TIMESTAMP|" | autoconf -W all -I$script_dir - > $script_dir/generated-configure.sh
erikj@458 52 rm -rf autom4te.cache
erikj@458 53
ohair@494 54 if test -e $custom_hook; then
ohair@478 55 echo Generating custom generated-configure.sh
ohair@478 56 # We have custom sources available; also generate configure script
ohair@478 57 # with custom hooks compiled in.
erikj@458 58 cat $script_dir/configure.ac | sed -e "s|@DATE_WHEN_GENERATED@|$TIMESTAMP|" | \
ohair@494 59 sed -e "s|#CUSTOM_AUTOCONF_INCLUDE|m4_include([$custom_hook])|" | autoconf -W all -I$script_dir - > $custom_script_dir/generated-configure.sh
erikj@458 60 rm -rf autom4te.cache
ohair@478 61 else
ohair@478 62 echo No custom hook found: $custom_hook
erikj@458 63 fi

mercurial