Author: dgilmore Date: 2010-09-23 15:16:49 -0400 (Thu, 23 Sep 2010) New Revision: 3358
Modified: trunk/Makefile.in trunk/configure trunk/configure.ac trunk/osprey/Makefile.gsetup.in Log: - Added configure option: --with-build-lib-optimize=DEFAULT|DEBUG Note that --with-build-optimize=DEBUG will now only enable debugging in the compiler build. The --help comment for --with-build-lib-optimize, notes that --with-build-lib-optimize=DEBUG is not well tested. Note that with this change compiler/library builds configured with --with-build-lib-optimize=DEBUG can now be used for performance testing. - Breakup install rule into two rules, one for the GNU FEs (slow) and one for the compiler (fast), thus rebuilding and installing a component of the compiler can done via: make && make -C ../../.. install_compiler instead of: make && make -C ../../.. install Reviewed by Steve Ellcey, approved by Jian-Xin Lai. Modified: trunk/Makefile.in =================================================================== --- trunk/Makefile.in 2010-09-22 22:50:32 UTC (rev 3357) +++ trunk/Makefile.in 2010-09-23 19:16:49 UTC (rev 3358) @@ -155,7 +155,7 @@ CROSS_PHONY_TARGET = $(shell for i in $(CROSS_COMPONENTS); do basename "$$i" ; done) PHONY_TARGET = $(shell for i in $(NATIVE_COMPONENTS); do basename "$$i" ; done) -.PHONY : $(PHONY_TARGET) all build install clean clobber backend +.PHONY : $(PHONY_TARGET) all build install install_fe install_compiler clean clobber backend #define SKIP_DEP_BUILD will disable the unnecessary dependency check export SKIP_DEP_BUILD=1 @@ -301,7 +301,9 @@ export TOP_SRCDIR=$(TOP_SRCDIR); \ $(TOP_SRCDIR)/INSTALL.cross.sl @abs_top_builddir@ else -install: +install: install_fe install_compiler + +install_fe: $(MAKE) -C $(GNUFE_BUILD_DIR)/gcc \ install-common $(MAKE) -C $(GNUFE_BUILD_DIR)/gcc \ @@ -314,6 +316,8 @@ install-driver $(MAKE) -C $(GNUFE_BUILD_DIR)/$(GNUFE_BUILD_HOST)/libstdc++-v3 \ install + +install_compiler: export toolro...@prefix@; \ export TOP_SRCDIR=$(TOP_SRCDIR); \ $(TOP_SRCDIR)/install_compiler.sh $(MACHINE_TYPE) @@ -334,11 +338,11 @@ install export toolro...@prefix@; $(TOP_SRCDIR)/install_compiler.sh ia64-cross -LIB_ARGS = BUILD_TARGET=$(LIB_BUILD_TARGET) BUILD_COMPILER=SELF BUILD_AREA=$(LIB_BUILD_AREA) MACHINE_TYPE=$(LIB_MACHINE_TYPE) BUILD_ABI=$(LIB_BUILD_ABI) BUILD_ARCH=$(LIB_BUILD_ARCH) BUILD_HOST=$(LIB_BUILD_HOST) +LIB_ARGS = BUILD_TARGET=$(LIB_BUILD_TARGET) BUILD_COMPILER=SELF BUILD_AREA=$(LIB_BUILD_AREA) MACHINE_TYPE=$(LIB_MACHINE_TYPE) BUILD_ABI=$(LIB_BUILD_ABI) BUILD_ARCH=$(LIB_BUILD_ARCH) BUILD_HOST=$(LIB_BUILD_HOST) build_optimi...@build_lib_optimize@ ifeq ($(LIB_BUILD_TARGET),IA64) LIB_ARGS += BUILD_TYPE=NONSHARED endif -LIB2_ARGS = BUILD_TARGET=$(LIB2_BUILD_TARGET) BUILD_COMPILER=SELF BUILD_AREA=$(LIB2_BUILD_AREA) MACHINE_TYPE=$(LIB2_MACHINE_TYPE) BUILD_ABI=$(LIB2_BUILD_ABI) BUILD_ARCH=$(LIB2_BUILD_ARCH) BUILD_HOST=$(LIB2_BUILD_HOST) +LIB2_ARGS = BUILD_TARGET=$(LIB2_BUILD_TARGET) BUILD_COMPILER=SELF BUILD_AREA=$(LIB2_BUILD_AREA) MACHINE_TYPE=$(LIB2_MACHINE_TYPE) BUILD_ABI=$(LIB2_BUILD_ABI) BUILD_ARCH=$(LIB2_BUILD_ARCH) BUILD_HOST=$(LIB2_BUILD_HOST) build_optimi...@build_lib_optimize@ .PHONY: library lib clean-library clean-lib .PHONY: library2 lib2 clean-library2 clean-lib2 Modified: trunk/configure =================================================================== --- trunk/configure 2010-09-22 22:50:32 UTC (rev 3357) +++ trunk/configure 2010-09-23 19:16:49 UTC (rev 3358) @@ -273,7 +273,7 @@ ac_subdirs_all="$ac_subdirs_all osprey/cygnus" ac_subdirs_all="$ac_subdirs_all osprey-gcc-4.2.0" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os MACHINE_TYPE BUILD_ABI BUILD_ARCH BUILD_HOST BUILD_TARGET BUILD_VENDOR BUILD_OPTIMIZE BUILD_COMPILER BUILD_BOTH LIB_MACHINE_TYPE LIB_BUILD_TARGET LIB_BUILD_ABI LIB_BUILD_ARCH LIB_BUILD_HOST LIB2_MACHINE_TYPE LIB2_BUILD_TARGET LIB2_BUILD_ABI LIB2_BUILD_ARCH LIB2_BUILD_HOST BUILD_MULTILIB COMPILER_TARG_DIR TARG_INFO_NAME BUILD_GNU3 GCC_CONFIGURE_TARG GCC_DIR LIBLIST subdirs LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS build build_cpu build_vendor build_os host host_cpu host_vendor host_os target target_cpu target_vendor target_os MACHINE_TYPE BUILD_ABI BUILD_ARCH BUILD_HOST BUILD_TARGET BUILD_VENDOR BUILD_OPTIMIZE BUILD_LIB_OPTIMIZE BUILD_COMPILER BUILD_BOTH LIB_MACHINE_TYPE LIB_BUILD_TARGET LIB_BUILD_ABI LIB_BUILD_ARCH LIB_BUILD_HOST LIB2_MACHINE_TYPE LIB2_BUILD_TARGET LIB2_BUILD_ABI LIB2_BUILD_ARCH LIB2_BUILD_HOST BUILD_MULTILIB COMPILER_TARG_DIR TARG_INFO_NAME BUILD_GNU3 GCC_CONFIGURE_TARG GCC_DIR LIBLIST subdirs LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -792,7 +792,9 @@ --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-build-compiler=GNU|OSP Use GNU or OSP compilers in build - --with-build-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in build + --with-build-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in compiler build + --with-build-lib-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in library build. + Note that --with-build-lib-optimize=DEBUG is currently not well tested. _ACEOF fi @@ -1416,6 +1418,29 @@ ;; esac + +# Check whether --with-build-lib-optimize or --without-build-lib-optimize was given. +if test "${with_build_lib_optimize+set}" = set; then + withval="$with_build_lib_optimize" + BUILD_LIB_OPTIMIZE="$with_build_lib_optimize" +else + BUILD_LIB_OPTIMIZE=DEFAULT +fi; + +case "$BUILD_LIB_OPTIMIZE" in + DEFAULT|default) + BUILD_LIB_OPTIMIZE=DEFAULT + ;; + DEBUG|debug) + BUILD_LIB_OPTIMIZE=DEBUG + ;; + *) + { { echo "$as_me:$LINENO: error: \"BUILD_LIB_OPTIMIZE=$BUILD_LIB_OPTIMIZE is not supported\"" >&5 +echo "$as_me: error: \"BUILD_LIB_OPTIMIZE=$BUILD_LIB_OPTIMIZE is not supported\"" >&2;} + { (exit 1); exit 1; }; } + ;; +esac + # BUILD_MULTILIB supports building libraries twice, this is used on x86 # targets to have 32 and 64 bit libraries available. BUILD_MULTILIB=NO @@ -1620,6 +1645,7 @@ + # List of configurable files to create in object directory. ac_config_files="$ac_config_files Makefile osprey/Makefile.gsetup osprey/targdir/libspin/Makefile osprey/targdir/libspin_4_2_0/Makefile osprey/targdir/include/Makefile osprey/targdir/driver/Makefile osprey/targdir/libiberty/Makefile osprey/targdir/targ_info/Makefile osprey/targdir/be/Makefile osprey/targdir/libelf/Makefile osprey/targdir/libelfutil/Makefile osprey/targdir/libdwarf/Makefile osprey/targdir/libunwindP/Makefile osprey/targdir/cg/Makefile osprey/targdir/wopt/Makefile osprey/targdir/ipl/Makefile osprey/targdir/lno/Makefile osprey/targdir/lw_inline/Makefile osprey/targdir/ipa/Makefile osprey/targdir/whirl2c/Makefile osprey/targdir/whirl2f/Makefile osprey/targdir/libcomutil/Makefile osprey/targdir/ir_tools/Makefile osprey/targdir/libcmplrs/Makefile osprey/targdir/wgen/Makefile osprey/targdir/libcif/Makefile osprey/targdir/arith/Makefile osprey/targdir/orc_ict/Makefile osprey/targdir/orc_intel/Makefile osprey/targdir/libkapi/Makefile osprey/targdir/crayf90/Makefile osprey/targdir/crayf90/fe90/Makefile osprey/targdir/crayf90/libf90sgi/Makefile osprey/targdir/crayf90/sgi/Makefile" @@ -2389,6 +2415,7 @@ s,@BUILD_TARGET@,$BUILD_TARGET,;t t s,@BUILD_VENDOR@,$BUILD_VENDOR,;t t s,@BUILD_OPTIMIZE@,$BUILD_OPTIMIZE,;t t +s,@BUILD_LIB_OPTIMIZE@,$BUILD_LIB_OPTIMIZE,;t t s,@BUILD_COMPILER@,$BUILD_COMPILER,;t t s,@BUILD_BOTH@,$BUILD_BOTH,;t t s,@LIB_MACHINE_TYPE@,$LIB_MACHINE_TYPE,;t t Modified: trunk/configure.ac =================================================================== --- trunk/configure.ac 2010-09-22 22:50:32 UTC (rev 3357) +++ trunk/configure.ac 2010-09-23 19:16:49 UTC (rev 3358) @@ -76,7 +76,7 @@ esac AC_ARG_WITH(build-optimize, -[ --with-build-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in build], +[ --with-build-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in compiler build], BUILD_OPTIMIZE="$with_build_optimize", BUILD_OPTIMIZE=DEFAULT) @@ -94,6 +94,24 @@ ;; esac +AC_ARG_WITH(build-lib-optimize, +[ --with-build-lib-optimize=DEFAULT|DEBUG Use DEFAULT or DEBUG flags in library build. + Note that --with-build-lib-optimize=DEBUG is currently not well tested.], +BUILD_LIB_OPTIMIZE="$with_build_lib_optimize", +BUILD_LIB_OPTIMIZE=DEFAULT) + +case "$BUILD_LIB_OPTIMIZE" in + DEFAULT|default) + BUILD_LIB_OPTIMIZE=DEFAULT + ;; + DEBUG|debug) + BUILD_LIB_OPTIMIZE=DEBUG + ;; + *) + AC_MSG_ERROR(["BUILD_LIB_OPTIMIZE=$BUILD_LIB_OPTIMIZE is not supported"]) + ;; +esac + # BUILD_MULTILIB supports building libraries twice, this is used on x86 # targets to have 32 and 64 bit libraries available. BUILD_MULTILIB=NO @@ -275,6 +293,7 @@ AC_SUBST([BUILD_TARGET]) AC_SUBST([BUILD_VENDOR]) AC_SUBST([BUILD_OPTIMIZE]) +AC_SUBST([BUILD_LIB_OPTIMIZE]) AC_SUBST([BUILD_COMPILER]) AC_SUBST([BUILD_BOTH]) AC_SUBST([LIB_MACHINE_TYPE]) Modified: trunk/osprey/Makefile.gsetup.in =================================================================== --- trunk/osprey/Makefile.gsetup.in 2010-09-22 22:50:32 UTC (rev 3357) +++ trunk/osprey/Makefile.gsetup.in 2010-09-23 19:16:49 UTC (rev 3358) @@ -398,7 +398,7 @@ ifdef BUILD_OPTIMIZE ifeq ($(BUILD_OPTIMIZE), DEFAULT) - BUILD_OPTIMIZE = NODEBUG + override BUILD_OPTIMIZE = NODEBUG else ifeq ($(BUILD_OPTIMIZE), "") ABORT_BUILD = BUILD_OPTIMIZE has no value! ------------------------------------------------------------------------------ Nokia and AT&T present the 2010 Calling All Innovators-North America contest Create new apps & games for the Nokia N8 for consumers in U.S. and Canada $10 million total in prizes - $4M cash, 500 devices, nearly $6M in marketing Develop with Nokia Qt SDK, Web Runtime, or Java and Publish to Ovi Store http://p.sf.net/sfu/nokia-dev2dev _______________________________________________ Open64-devel mailing list Open64-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/open64-devel