common/autoconf/source-dirs.m4

Thu, 10 Oct 2013 14:58:19 +0200

author
ihse
date
Thu, 10 Oct 2013 14:58:19 +0200
changeset 839
174a54ce39c4
parent 795
64f52ef175a4
child 912
a667caba1e84
permissions
-rw-r--r--

8001931: The new build system whitespace cleanup
Reviewed-by: tbell, simonis, erikj

erikj@459 1 #
erikj@459 2 # Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
erikj@459 3 # DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
erikj@459 4 #
erikj@459 5 # This code is free software; you can redistribute it and/or modify it
erikj@459 6 # under the terms of the GNU General Public License version 2 only, as
erikj@459 7 # published by the Free Software Foundation. Oracle designates this
erikj@459 8 # particular file as subject to the "Classpath" exception as provided
erikj@459 9 # by Oracle in the LICENSE file that accompanied this code.
erikj@459 10 #
erikj@459 11 # This code is distributed in the hope that it will be useful, but WITHOUT
erikj@459 12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
erikj@459 13 # FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
erikj@459 14 # version 2 for more details (a copy is included in the LICENSE file that
erikj@459 15 # accompanied this code).
erikj@459 16 #
erikj@459 17 # You should have received a copy of the GNU General Public License version
erikj@459 18 # 2 along with this work; if not, write to the Free Software Foundation,
erikj@459 19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
erikj@459 20 #
erikj@459 21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
erikj@459 22 # or visit www.oracle.com if you need additional information or have any
erikj@459 23 # questions.
erikj@459 24 #
erikj@459 25
erikj@459 26 AC_DEFUN_ONCE([SRCDIRS_SETUP_TOPDIRS],
erikj@459 27 [
ihse@839 28 # Where are the sources. Any of these can be overridden
ihse@839 29 # using --with-override-corba and the likes.
ihse@839 30 LANGTOOLS_TOPDIR="$SRC_ROOT/langtools"
ihse@839 31 CORBA_TOPDIR="$SRC_ROOT/corba"
ihse@839 32 JAXP_TOPDIR="$SRC_ROOT/jaxp"
ihse@839 33 JAXWS_TOPDIR="$SRC_ROOT/jaxws"
ihse@839 34 HOTSPOT_TOPDIR="$SRC_ROOT/hotspot"
ihse@839 35 NASHORN_TOPDIR="$SRC_ROOT/nashorn"
ihse@839 36 JDK_TOPDIR="$SRC_ROOT/jdk"
ihse@839 37 AC_SUBST(LANGTOOLS_TOPDIR)
ihse@839 38 AC_SUBST(CORBA_TOPDIR)
ihse@839 39 AC_SUBST(JAXP_TOPDIR)
ihse@839 40 AC_SUBST(JAXWS_TOPDIR)
ihse@839 41 AC_SUBST(HOTSPOT_TOPDIR)
ihse@839 42 AC_SUBST(NASHORN_TOPDIR)
ihse@839 43 AC_SUBST(JDK_TOPDIR)
erikj@459 44 ])
erikj@459 45
erikj@459 46
erikj@459 47 AC_DEFUN_ONCE([SRCDIRS_SETUP_ALTERNATIVE_TOPDIRS],
erikj@459 48 [
erikj@459 49
ihse@839 50 ###############################################################################
ihse@839 51 #
ihse@839 52 # Pickup additional source for a component from outside of the source root
ihse@839 53 # or override source for a component.
ihse@839 54 #
ihse@839 55 AC_ARG_WITH(add-source-root, [AS_HELP_STRING([--with-add-source-root],
ihse@839 56 [for each and every source directory, look in this additional source root for
ihse@839 57 the same directory; if it exists and have files in it, include it in the build])])
erikj@459 58
ihse@839 59 AC_ARG_WITH(override-source-root, [AS_HELP_STRING([--with-override-source-root],
ihse@839 60 [for each and every source directory, look in this override source root for
ihse@839 61 the same directory; if it exists, use that directory instead and
ihse@839 62 ignore the directory in the original source root])])
erikj@459 63
ihse@839 64 AC_ARG_WITH(adds-and-overrides, [AS_HELP_STRING([--with-adds-and-overrides],
ihse@839 65 [use the subdirs 'adds' and 'overrides' in the specified directory as
ihse@839 66 add-source-root and override-source-root])])
ihse@839 67
ihse@839 68 if test "x$with_adds_and_overrides" != x; then
erikj@459 69 with_add_source_root="$with_adds_and_overrides/adds"
erikj@459 70 with_override_source_root="$with_adds_and_overrides/overrides"
ihse@839 71 fi
erikj@459 72
ihse@839 73 if test "x$with_add_source_root" != x; then
erikj@459 74 if ! test -d $with_add_source_root; then
ihse@839 75 AC_MSG_ERROR([Trying to use a non-existant add-source-root $with_add_source_root])
erikj@459 76 fi
erikj@459 77 CURDIR="$PWD"
erikj@459 78 cd "$with_add_source_root"
erikj@459 79 ADD_SRC_ROOT="`pwd`"
erikj@459 80 cd "$CURDIR"
erikj@459 81 # Verify that the addon source root does not have any root makefiles.
erikj@459 82 # If it does, then it is usually an error, prevent this.
erikj@459 83 if test -f $with_add_source_root/langtools/makefiles/Makefile || \
ihse@839 84 test -f $with_add_source_root/langtools/make/Makefile; then
ihse@839 85 AC_MSG_ERROR([Your add source root seems to contain a full langtools repo! An add source root should only contain additional sources.])
erikj@459 86 fi
erikj@459 87 if test -f $with_add_source_root/corba/makefiles/Makefile || \
ihse@839 88 test -f $with_add_source_root/corba/make/Makefile; then
ihse@839 89 AC_MSG_ERROR([Your add source root seems to contain a full corba repo! An add source root should only contain additional sources.])
erikj@459 90 fi
erikj@459 91 if test -f $with_add_source_root/jaxp/makefiles/Makefile || \
ihse@839 92 test -f $with_add_source_root/jaxp/make/Makefile; then
ihse@839 93 AC_MSG_ERROR([Your add source root seems to contain a full jaxp repo! An add source root should only contain additional sources.])
erikj@459 94 fi
erikj@459 95 if test -f $with_add_source_root/jaxws/makefiles/Makefile || \
ihse@839 96 test -f $with_add_source_root/jaxws/make/Makefile; then
ihse@839 97 AC_MSG_ERROR([Your add source root seems to contain a full jaxws repo! An add source root should only contain additional sources.])
erikj@459 98 fi
erikj@459 99 if test -f $with_add_source_root/hotspot/makefiles/Makefile || \
ihse@839 100 test -f $with_add_source_root/hotspot/make/Makefile; then
ihse@839 101 AC_MSG_ERROR([Your add source root seems to contain a full hotspot repo! An add source root should only contain additional sources.])
erikj@459 102 fi
ihse@795 103 if test -f $with_add_source_root/nashorn/makefiles/Makefile || \
ihse@839 104 test -f $with_add_source_root/nashorn/make/Makefile; then
ihse@839 105 AC_MSG_ERROR([Your add source root seems to contain a full nashorn repo! An add source root should only contain additional sources.])
ihse@795 106 fi
erikj@459 107 if test -f $with_add_source_root/jdk/makefiles/Makefile || \
ihse@839 108 test -f $with_add_source_root/jdk/make/Makefile; then
ihse@839 109 AC_MSG_ERROR([Your add source root seems to contain a full JDK repo! An add source root should only contain additional sources.])
erikj@459 110 fi
ihse@839 111 fi
ihse@839 112 AC_SUBST(ADD_SRC_ROOT)
erikj@459 113
ihse@839 114 if test "x$with_override_source_root" != x; then
erikj@459 115 if ! test -d $with_override_source_root; then
ihse@839 116 AC_MSG_ERROR([Trying to use a non-existant override-source-root $with_override_source_root])
erikj@459 117 fi
erikj@459 118 CURDIR="$PWD"
erikj@459 119 cd "$with_override_source_root"
erikj@459 120 OVERRIDE_SRC_ROOT="`pwd`"
erikj@459 121 cd "$CURDIR"
erikj@459 122 if test -f $with_override_source_root/langtools/makefiles/Makefile || \
ihse@839 123 test -f $with_override_source_root/langtools/make/Makefile; then
ihse@839 124 AC_MSG_ERROR([Your override source root seems to contain a full langtools repo! An override source root should only contain sources that override.])
erikj@459 125 fi
erikj@459 126 if test -f $with_override_source_root/corba/makefiles/Makefile || \
ihse@839 127 test -f $with_override_source_root/corba/make/Makefile; then
ihse@839 128 AC_MSG_ERROR([Your override source root seems to contain a full corba repo! An override source root should only contain sources that override.])
erikj@459 129 fi
erikj@459 130 if test -f $with_override_source_root/jaxp/makefiles/Makefile || \
ihse@839 131 test -f $with_override_source_root/jaxp/make/Makefile; then
ihse@839 132 AC_MSG_ERROR([Your override source root seems to contain a full jaxp repo! An override source root should only contain sources that override.])
erikj@459 133 fi
erikj@459 134 if test -f $with_override_source_root/jaxws/makefiles/Makefile || \
ihse@839 135 test -f $with_override_source_root/jaxws/make/Makefile; then
ihse@839 136 AC_MSG_ERROR([Your override source root seems to contain a full jaxws repo! An override source root should only contain sources that override.])
erikj@459 137 fi
erikj@459 138 if test -f $with_override_source_root/hotspot/makefiles/Makefile || \
ihse@839 139 test -f $with_override_source_root/hotspot/make/Makefile; then
ihse@839 140 AC_MSG_ERROR([Your override source root seems to contain a full hotspot repo! An override source root should only contain sources that override.])
erikj@459 141 fi
ihse@795 142 if test -f $with_override_source_root/nashorn/makefiles/Makefile || \
ihse@839 143 test -f $with_override_source_root/nashorn/make/Makefile; then
ihse@839 144 AC_MSG_ERROR([Your override source root seems to contain a full nashorn repo! An override source root should only contain sources that override.])
ihse@795 145 fi
erikj@459 146 if test -f $with_override_source_root/jdk/makefiles/Makefile || \
ihse@839 147 test -f $with_override_source_root/jdk/make/Makefile; then
ihse@839 148 AC_MSG_ERROR([Your override source root seems to contain a full JDK repo! An override source root should only contain sources that override.])
erikj@459 149 fi
ihse@839 150 fi
ihse@839 151 AC_SUBST(OVERRIDE_SRC_ROOT)
erikj@459 152
ihse@839 153 ###############################################################################
ihse@839 154 #
ihse@839 155 # Override a repo completely, this is used for example when you have 3 small
ihse@839 156 # development sandboxes of the langtools sources and want to avoid having 3 full
ihse@839 157 # OpenJDK sources checked out on disk.
ihse@839 158 #
ihse@839 159 # Assuming that the 3 langtools sandboxes are located here:
ihse@839 160 # /home/fredrik/sandbox1/langtools
ihse@839 161 # /home/fredrik/sandbox2/langtools
ihse@839 162 # /home/fredrik/sandbox3/langtools
ihse@839 163 #
ihse@839 164 # From the source root you create build subdirs manually:
ihse@839 165 # mkdir -p build1 build2 build3
ihse@839 166 # in each build directory run:
ihse@839 167 # (cd build1 && ../configure --with-override-langtools=/home/fredrik/sandbox1 && make)
ihse@839 168 # (cd build2 && ../configure --with-override-langtools=/home/fredrik/sandbox2 && make)
ihse@839 169 # (cd build3 && ../configure --with-override-langtools=/home/fredrik/sandbox3 && make)
ihse@839 170 #
erikj@459 171
ihse@839 172 AC_ARG_WITH(override-langtools, [AS_HELP_STRING([--with-override-langtools],
ihse@839 173 [use this langtools dir for the build])])
erikj@459 174
ihse@839 175 AC_ARG_WITH(override-corba, [AS_HELP_STRING([--with-override-corba],
ihse@839 176 [use this corba dir for the build])])
erikj@459 177
ihse@839 178 AC_ARG_WITH(override-jaxp, [AS_HELP_STRING([--with-override-jaxp],
ihse@839 179 [use this jaxp dir for the build])])
erikj@459 180
ihse@839 181 AC_ARG_WITH(override-jaxws, [AS_HELP_STRING([--with-override-jaxws],
ihse@839 182 [use this jaxws dir for the build])])
erikj@459 183
ihse@839 184 AC_ARG_WITH(override-hotspot, [AS_HELP_STRING([--with-override-hotspot],
ihse@839 185 [use this hotspot dir for the build])])
erikj@459 186
ihse@839 187 AC_ARG_WITH(override-nashorn, [AS_HELP_STRING([--with-override-nashorn],
ihse@839 188 [use this nashorn dir for the build])])
ihse@795 189
ihse@839 190 AC_ARG_WITH(override-jdk, [AS_HELP_STRING([--with-override-jdk],
ihse@839 191 [use this jdk dir for the build])])
erikj@459 192
ihse@839 193 if test "x$with_override_langtools" != x; then
erikj@459 194 CURDIR="$PWD"
erikj@459 195 cd "$with_override_langtools"
erikj@459 196 LANGTOOLS_TOPDIR="`pwd`"
erikj@459 197 cd "$CURDIR"
erikj@459 198 if ! test -f $LANGTOOLS_TOPDIR/makefiles/Makefile; then
ihse@839 199 AC_MSG_ERROR([You have to override langtools with a full langtools repo!])
erikj@459 200 fi
erikj@459 201 AC_MSG_CHECKING([if langtools should be overridden])
erikj@459 202 AC_MSG_RESULT([yes with $LANGTOOLS_TOPDIR])
ihse@839 203 fi
ihse@839 204 if test "x$with_override_corba" != x; then
erikj@459 205 CURDIR="$PWD"
erikj@459 206 cd "$with_override_corba"
erikj@459 207 CORBA_TOPDIR="`pwd`"
erikj@459 208 cd "$CURDIR"
erikj@459 209 if ! test -f $CORBA_TOPDIR/makefiles/Makefile; then
ihse@839 210 AC_MSG_ERROR([You have to override corba with a full corba repo!])
erikj@459 211 fi
erikj@459 212 AC_MSG_CHECKING([if corba should be overridden])
erikj@459 213 AC_MSG_RESULT([yes with $CORBA_TOPDIR])
ihse@839 214 fi
ihse@839 215 if test "x$with_override_jaxp" != x; then
erikj@459 216 CURDIR="$PWD"
erikj@459 217 cd "$with_override_jaxp"
erikj@459 218 JAXP_TOPDIR="`pwd`"
erikj@459 219 cd "$CURDIR"
erikj@459 220 if ! test -f $JAXP_TOPDIR/makefiles/Makefile; then
ihse@839 221 AC_MSG_ERROR([You have to override jaxp with a full jaxp repo!])
erikj@459 222 fi
erikj@459 223 AC_MSG_CHECKING([if jaxp should be overridden])
erikj@459 224 AC_MSG_RESULT([yes with $JAXP_TOPDIR])
ihse@839 225 fi
ihse@839 226 if test "x$with_override_jaxws" != x; then
erikj@459 227 CURDIR="$PWD"
erikj@459 228 cd "$with_override_jaxws"
erikj@459 229 JAXWS_TOPDIR="`pwd`"
erikj@459 230 cd "$CURDIR"
erikj@459 231 if ! test -f $JAXWS_TOPDIR/makefiles/Makefile; then
ihse@839 232 AC_MSG_ERROR([You have to override jaxws with a full jaxws repo!])
erikj@459 233 fi
erikj@459 234 AC_MSG_CHECKING([if jaxws should be overridden])
erikj@459 235 AC_MSG_RESULT([yes with $JAXWS_TOPDIR])
ihse@839 236 fi
ihse@839 237 if test "x$with_override_hotspot" != x; then
erikj@459 238 CURDIR="$PWD"
erikj@459 239 cd "$with_override_hotspot"
erikj@459 240 HOTSPOT_TOPDIR="`pwd`"
erikj@459 241 cd "$CURDIR"
erikj@459 242 if ! test -f $HOTSPOT_TOPDIR/make/Makefile && \
ihse@839 243 ! test -f $HOTSPOT_TOPDIR/makefiles/Makefile; then
ihse@839 244 AC_MSG_ERROR([You have to override hotspot with a full hotspot repo!])
erikj@459 245 fi
erikj@459 246 AC_MSG_CHECKING([if hotspot should be overridden])
erikj@459 247 AC_MSG_RESULT([yes with $HOTSPOT_TOPDIR])
ihse@839 248 fi
ihse@839 249 if test "x$with_override_nashorn" != x; then
jjg@645 250 CURDIR="$PWD"
jjg@645 251 cd "$with_override_nashorn"
jjg@645 252 NASHORN_TOPDIR="`pwd`"
jjg@645 253 cd "$CURDIR"
ihse@795 254 if ! test -f $NASHORN_TOPDIR/makefiles/Makefile; then
ihse@839 255 AC_MSG_ERROR([You have to override nashorn with a full nashorn repo!])
jjg@645 256 fi
jjg@645 257 AC_MSG_CHECKING([if nashorn should be overridden])
jjg@645 258 AC_MSG_RESULT([yes with $NASHORN_TOPDIR])
ihse@839 259 fi
ihse@839 260 if test "x$with_override_jdk" != x; then
erikj@459 261 CURDIR="$PWD"
erikj@459 262 cd "$with_override_jdk"
erikj@459 263 JDK_TOPDIR="`pwd`"
erikj@459 264 cd "$CURDIR"
erikj@459 265 if ! test -f $JDK_TOPDIR/makefiles/Makefile; then
ihse@839 266 AC_MSG_ERROR([You have to override JDK with a full JDK repo!])
erikj@459 267 fi
erikj@459 268 AC_MSG_CHECKING([if JDK should be overridden])
erikj@459 269 AC_MSG_RESULT([yes with $JDK_TOPDIR])
ihse@839 270 fi
erikj@459 271 ])
erikj@459 272
erikj@459 273 AC_DEFUN_ONCE([SRCDIRS_SETUP_OUTPUT_DIRS],
erikj@459 274 [
ihse@839 275 BUILD_OUTPUT="$OUTPUT_ROOT"
ihse@839 276 AC_SUBST(BUILD_OUTPUT)
ohair@478 277
ihse@839 278 HOTSPOT_DIST="$OUTPUT_ROOT/hotspot/dist"
ihse@839 279 BUILD_HOTSPOT=true
ihse@839 280 AC_SUBST(HOTSPOT_DIST)
ihse@839 281 AC_SUBST(BUILD_HOTSPOT)
ihse@839 282 AC_ARG_WITH(import-hotspot, [AS_HELP_STRING([--with-import-hotspot],
ihse@839 283 [import hotspot binaries from this jdk image or hotspot build dist dir instead of building from source])])
ihse@839 284 if test "x$with_import_hotspot" != x; then
tbell@506 285 CURDIR="$PWD"
tbell@506 286 cd "$with_import_hotspot"
tbell@506 287 HOTSPOT_DIST="`pwd`"
tbell@506 288 cd "$CURDIR"
tbell@506 289 if ! (test -d $HOTSPOT_DIST/lib && test -d $HOTSPOT_DIST/jre/lib); then
ihse@839 290 AC_MSG_ERROR([You have to import hotspot from a full jdk image or hotspot build dist dir!])
tbell@506 291 fi
tbell@506 292 AC_MSG_CHECKING([if hotspot should be imported])
tbell@506 293 AC_MSG_RESULT([yes from $HOTSPOT_DIST])
tbell@506 294 BUILD_HOTSPOT=false
ihse@839 295 fi
tbell@506 296
ihse@839 297 JDK_OUTPUTDIR="$OUTPUT_ROOT/jdk"
erikj@459 298 ])

mercurial