makefiles/CompileLaunchers.gmk

Print this page




   6 # under the terms of the GNU General Public License version 2 only, as
   7 # published by the Free Software Foundation.  Oracle designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 defalt: all
  27 
  28 include $(SPEC)
  29 include MakeBase.gmk
  30 include NativeCompilation.gmk
  31 
  32 # Setup the java compilers for the JDK build.
  33 include Setup.gmk
  34 
  35 # Prepare the find cache. Only used on windows.
  36 $(eval $(call FillCacheFind,$(JDK_TOPDIR)/src/share/bin))
  37 
  38 # Build tools
  39 include Tools.gmk
  40 
  41 BUILD_LAUNCHERS=
  42 
  43 # When building a legacy overlay image (on solaris 64 bit), the launchers 
  44 # need to be built with a different rpath and a different output dir.
  45 ifeq ($(OVERLAY_IMAGES),true)
  46     ORIGIN_ROOT:=/../..


 442 # On windows, unpack200 is linked completely differently to all other
 443 # executables, using the compiler with the compiler arguments.
 444 # It's also linked incrementally, producing a .ilk file that needs to 
 445 # be kept away.
 446 ifeq ($(OPENJDK_TARGET_OS),windows)
 447     BUILD_UNPACKEXE_LDEXE:=$(CC)
 448     EXE_OUT_OPTION_save:=$(EXE_OUT_OPTION)
 449     EXE_OUT_OPTION:=-Fe
 450 endif
 451 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
 452                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
 453                 EXCLUDE_FILES:=jni.cpp,\
 454                 LANG:=$(UNPACKEXE_LANG),\
 455                 OPTIMIZATION:=LOW, \
 456                 CFLAGS:=$(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE)\
 457                         -DFULL, \
 458                 CFLAGS_release:=-DPRODUCT,\
 459                 CFLAGS_linux:=-fPIC,\
 460                 CFLAGS_solaris:=-KPIC, \
 461                 CFLAGS_macosx:=-fPIC, \
 462                 MAPFILE:=$(JDK_TOPDIR)/makefiles/mapfiles/libunpack/mapfile-vers-unpack200,\
 463                 LDFLAGS:=$(UNPACKEXE_ZIPOBJS),\
 464                 LDFLAGS_windows:=$(CXXFLAGS_JDKEXE),\
 465                 LDFLAGS_posix:=$(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \
 466                          $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)) \
 467                          $(call SET_SHARED_LIBRARY_ORIGIN),\
 468                 LDFLAGS_linux:=-lc,\
 469                 LDFLAGS_solaris:=$(UNPACKEXE_LDFLAGS_solaris) -lc,\
 470                 LDFLAGS_SUFFIX:=$(LIBCXX),\
 471                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe$(OUTPUT_SUBDIR),\
 472                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe$(OUTPUT_SUBDIR),\
 473                 PROGRAM:=unpack200,\
 474                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 475                 RC_FLAGS:=$(RC_FLAGS)\
 476                           -D "JDK_FNAME=unpack200.exe" \
 477                           -D "JDK_INTERNAL_NAME=unpack200" \
 478                           -D "JDK_FTYPE=0x1L",\
 479                 DEBUG_SYMBOLS:=true,\
 480                 MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/unpack200_proto.exe.manifest))
 481 
 482 ifeq ($(OPENJDK_TARGET_OS),windows)




   6 # under the terms of the GNU General Public License version 2 only, as
   7 # published by the Free Software Foundation.  Oracle designates this
   8 # particular file as subject to the "Classpath" exception as provided
   9 # by Oracle in the LICENSE file that accompanied this code.
  10 #
  11 # This code is distributed in the hope that it will be useful, but WITHOUT
  12 # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
  13 # FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
  14 # version 2 for more details (a copy is included in the LICENSE file that
  15 # accompanied this code).
  16 #
  17 # You should have received a copy of the GNU General Public License version
  18 # 2 along with this work; if not, write to the Free Software Foundation,
  19 # Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
  20 #
  21 # Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
  22 # or visit www.oracle.com if you need additional information or have any
  23 # questions.
  24 #
  25 
  26 default: all
  27 
  28 include $(SPEC)
  29 include MakeBase.gmk
  30 include NativeCompilation.gmk
  31 
  32 # Setup the java compilers for the JDK build.
  33 include Setup.gmk
  34 
  35 # Prepare the find cache. Only used on windows.
  36 $(eval $(call FillCacheFind,$(JDK_TOPDIR)/src/share/bin))
  37 
  38 # Build tools
  39 include Tools.gmk
  40 
  41 BUILD_LAUNCHERS=
  42 
  43 # When building a legacy overlay image (on solaris 64 bit), the launchers 
  44 # need to be built with a different rpath and a different output dir.
  45 ifeq ($(OVERLAY_IMAGES),true)
  46     ORIGIN_ROOT:=/../..


 442 # On windows, unpack200 is linked completely differently to all other
 443 # executables, using the compiler with the compiler arguments.
 444 # It's also linked incrementally, producing a .ilk file that needs to 
 445 # be kept away.
 446 ifeq ($(OPENJDK_TARGET_OS),windows)
 447     BUILD_UNPACKEXE_LDEXE:=$(CC)
 448     EXE_OUT_OPTION_save:=$(EXE_OUT_OPTION)
 449     EXE_OUT_OPTION:=-Fe
 450 endif
 451 $(eval $(call SetupNativeCompilation,BUILD_UNPACKEXE,\
 452                 SRC:=$(JDK_TOPDIR)/src/share/native/com/sun/java/util/jar/pack,\
 453                 EXCLUDE_FILES:=jni.cpp,\
 454                 LANG:=$(UNPACKEXE_LANG),\
 455                 OPTIMIZATION:=LOW, \
 456                 CFLAGS:=$(UNPACKEXE_CFLAGS) $(CXXFLAGS_JDKEXE)\
 457                         -DFULL, \
 458                 CFLAGS_release:=-DPRODUCT,\
 459                 CFLAGS_linux:=-fPIC,\
 460                 CFLAGS_solaris:=-KPIC, \
 461                 CFLAGS_macosx:=-fPIC, \

 462                 LDFLAGS:=$(UNPACKEXE_ZIPOBJS),\
 463                 LDFLAGS_windows:=$(CXXFLAGS_JDKEXE),\
 464                 LDFLAGS_posix:=$(LDFLAGS_JDKEXE) $(LDFLAGS_CXX_JDK) \
 465                          $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)unpack$(SHARED_LIBRARY_SUFFIX)) \
 466                          $(call SET_SHARED_LIBRARY_ORIGIN),\
 467                 LDFLAGS_linux:=-lc,\
 468                 LDFLAGS_solaris:=$(UNPACKEXE_LDFLAGS_solaris) -lc,\
 469                 LDFLAGS_SUFFIX:=$(LIBCXX),\
 470                 OBJECT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe$(OUTPUT_SUBDIR),\
 471                 OUTPUT_DIR:=$(JDK_OUTPUTDIR)/objs/unpackexe$(OUTPUT_SUBDIR),\
 472                 PROGRAM:=unpack200,\
 473                 VERSIONINFO_RESOURCE:=$(JDK_TOPDIR)/src/windows/resource/version.rc,\
 474                 RC_FLAGS:=$(RC_FLAGS)\
 475                           -D "JDK_FNAME=unpack200.exe" \
 476                           -D "JDK_INTERNAL_NAME=unpack200" \
 477                           -D "JDK_FTYPE=0x1L",\
 478                 DEBUG_SYMBOLS:=true,\
 479                 MANIFEST:=$(JDK_TOPDIR)/src/windows/resource/unpack200_proto.exe.manifest))
 480 
 481 ifeq ($(OPENJDK_TARGET_OS),windows)