Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 19 May 2015 22:13:51 +0000 (UTC)
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r386818 - in head/java/openjdk8: . files
Message-ID:  <201505192213.t4JMDp0w020001@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jkim
Date: Tue May 19 22:13:51 2015
New Revision: 386818
URL: https://svnweb.freebsd.org/changeset/ports/386818

Log:
  Do not use static libjli for stable/10 and head.  This complements PR193009.
  Re-apply r381431 while I am here.
  
  Submitted by:	Kurt Miller <kurt@intricatesoftware.com>

Added:
  head/java/openjdk8/files/patch-static-libjli   (contents, props changed)
Modified:
  head/java/openjdk8/Makefile
  head/java/openjdk8/files/patch-bsd
  head/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk

Modified: head/java/openjdk8/Makefile
==============================================================================
--- head/java/openjdk8/Makefile	Tue May 19 21:59:28 2015	(r386817)
+++ head/java/openjdk8/Makefile	Tue May 19 22:13:51 2015	(r386818)
@@ -2,6 +2,7 @@
 
 PORTNAME=	openjdk
 PORTVERSION=	${JDK_MAJOR_VERSION}.${JDK_UPDATE_VERSION}.${JDK_BUILD_NUMBER:S/^0//}
+PORTREVISION=	1
 CATEGORIES=	java devel
 MASTER_SITES=	http://download.java.net/openjdk/jdk${JDK_MAJOR_VERSION}/promoted/b${DIST_BUILD_NUMBER}/:jdk \
 		https://adopt-openjdk.ci.cloudbees.com/job/jtreg/${JTREG_JENKINS_BUILD}/artifact/:jtreg \
@@ -27,6 +28,7 @@ RUN_DEPENDS=	javavm:${PORTSDIR}/java/jav
 
 USES=		compiler:features dos2unix gmake iconv pkgconfig \
 		shebangfix
+USE_AUTOTOOLS=	autoconf
 USE_XORG=	x11 xext xi xrender xt xtst
 GNU_CONFIGURE=	yes
 
@@ -116,6 +118,7 @@ CONFIGURE_ARGS+=	--disable-ccache \
 			--with-giflib=system \
 			--with-jobs=${MAKE_JOBS_NUMBER} \
 			--with-milestone=fcs \
+			--with-package-path=${LOCALBASE} \
 			--with-zlib=system
 CONFIGURE_SCRIPT=	../../configure
 CONFIGURE_WRKSRC=	${WRKSRC}/common/autoconf
@@ -182,6 +185,11 @@ BOOTSTRAPJDKDIR?=	${LOCALBASE}/openjdk7
 BUILD_DEPENDS+=		${BOOTSTRAPJDKDIR}/bin/javac:${PORTSDIR}/java/openjdk7
 .endif
 
+# PR193009: work around the rtld bug
+#.if ${OSVERSION} < 1001511
+CONFIGURE_ARGS+=	--enable-static-libjli
+#.endif
+
 .if ${COMPILER_TYPE} == clang
 .if ${COMPILER_VERSION} >= 35
 MAKE_ENV+=	COMPILER_WARNINGS_FATAL=false
@@ -238,6 +246,9 @@ post-patch:
 	    ${WRKSRC}/jdk/make/lib/ServiceabilityLibraries.gmk
 	@${CHMOD} 755 ${WRKSRC}/configure
 
+run-autotools-autoconf:
+	@cd ${CONFIGURE_WRKSRC} && ${SETENV} ${AUTOTOOLS_ENV} bash autogen.sh
+
 post-build:
 .if !defined(BUILD_JRE)
 	@${JDK_IMAGEDIR}/bin/jar cfe \

Modified: head/java/openjdk8/files/patch-bsd
==============================================================================
--- head/java/openjdk8/files/patch-bsd	Tue May 19 21:59:28 2015	(r386817)
+++ head/java/openjdk8/files/patch-bsd	Tue May 19 22:13:51 2015	(r386818)
@@ -6101,7 +6101,7 @@
      # Solaris still uses OPENWIN_LIB ..
      LIBSPLASHSCREEN_LDFLAGS_SUFFIX += -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -lX11 -lXext $(LIBM) -lpthread
 +  else ifeq ($(OPENJDK_TARGET_OS), bsd)
-+    LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM)  -pthread
++    LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -liconv -pthread
    else	# .. all other Unixes can use X_LIBS
      LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread
    endif
@@ -7514,48 +7514,6 @@
 +        return new KQueueSelectorImpl(this);
 +    }
 +}
---- ./jdk/src/bsd/doc/man/javah.1	Tue Mar 17 00:09:12 2015 +0300
-+++ ./jdk/src/bsd/doc/man/javah.1	Tue May 05 18:07:05 2015 -0700
-@@ -110,7 +110,7 @@
- 
- \&.:\fIyour-path\fR
- 
--Example: \f3\&.:/home/avh/classes:/usr/local/java/classes\fR
-+Example: \f3\&.:/home/avh/classes:/usr/local/share/java/classes\fR
- 
- \fIWindows\fR:
- 
---- ./jdk/src/bsd/doc/man/rmic.1	Tue Mar 17 00:09:12 2015 +0300
-+++ ./jdk/src/bsd/doc/man/rmic.1	Tue May 05 18:07:05 2015 -0700
-@@ -93,7 +93,7 @@
- .TP
- -classpath path
- .br
--Specifies the path the \f3rmic\fR command uses to look up classes\&. This option overrides the default or the \f3CLASSPATH\fR environment variable when it is set\&. Directories are separated by colons\&. The general format for path is: \f3\&.:<your_path>\fR, for example: \f3\&.:/usr/local/java/classes\fR\&.
-+Specifies the path the \f3rmic\fR command uses to look up classes\&. This option overrides the default or the \f3CLASSPATH\fR environment variable when it is set\&. Directories are separated by colons\&. The general format for path is: \f3\&.:<your_path>\fR, for example: \f3\&.:/usr/local/share/java/classes\fR\&.
- .TP
- -d \fIdirectory\fR
- .br
-@@ -207,7 +207,7 @@
- .SH ENVIRONMENT\ VARIABLES    
- .TP     
- CLASSPATH
--Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/java/classes\fR\&.
-+Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/share/java/classes\fR\&.
- .SH SEE\ ALSO    
- .TP 0.2i    
- \(bu
---- ./jdk/src/bsd/doc/man/rmid.1	Tue Mar 17 00:09:12 2015 +0300
-+++ ./jdk/src/bsd/doc/man/rmid.1	Tue May 05 18:07:05 2015 -0700
-@@ -301,7 +301,7 @@
- .SH ENVIRONMENT\ VARIABLES    
- .TP     
- CLASSPATH
--Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/java/classes\fR\&.
-+Used to provide the system a path to user-defined classes\&. Directories are separated by colons, for example: \f3\&.:/usr/local/share/java/classes\fR\&.
- .SH SEE\ ALSO    
- .TP 0.2i    
- \(bu
 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
 +++ ./jdk/src/bsd/native/sun/nio/ch/KQueueArrayWrapper.c	Tue May 05 18:07:05 2015 -0700
 @@ -0,0 +1,171 @@

Modified: head/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk
==============================================================================
--- head/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk	Tue May 19 21:59:28 2015	(r386817)
+++ head/java/openjdk8/files/patch-jdk-make-lib-Awt2dLibraries.gmk	Tue May 19 22:13:51 2015	(r386818)
@@ -21,7 +21,7 @@
      # Solaris still uses OPENWIN_LIB ..
      LIBSPLASHSCREEN_LDFLAGS_SUFFIX += -L$(OPENWIN_LIB)$(OPENJDK_TARGET_CPU_ISADIR) -lX11 -lXext $(LIBM) -lpthread
    else ifeq ($(OPENJDK_TARGET_OS), bsd)
--    LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM)  -pthread
+-    LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -liconv -pthread
 +    LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) %%ICONV_LDFLAGS%% -pthread
    else	# .. all other Unixes can use X_LIBS
      LIBSPLASHSCREEN_LDFLAGS_SUFFIX += $(X_LIBS) -lX11 -lXext $(LIBM) -lpthread

Added: head/java/openjdk8/files/patch-static-libjli
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/java/openjdk8/files/patch-static-libjli	Tue May 19 22:13:51 2015	(r386818)
@@ -0,0 +1,121 @@
+--- common/autoconf/jdk-options.m4
++++ common/autoconf/jdk-options.m4
+@@ -407,6 +407,20 @@
+ 
+   ###############################################################################
+   #
++  # Enable or disable static linking of libjli on bsd only
++  #
++  AC_ARG_ENABLE(static-libjli, [AS_HELP_STRING([--enable-static-libjli],
++      [Enable staticly linking libjli on bsd @<:@disabled@:>@])],,
++      [enable_static_libjli=no])
++  if test "x$OPENJDK_TARGET_OS" = "xbsd" && test "x$enable_static_libjli" = "xyes"; then
++    BSD_STATIC_LIBJLI=bsd
++  else
++    BSD_STATIC_LIBJLI=
++  fi
++  AC_SUBST(BSD_STATIC_LIBJLI)
++
++  ###############################################################################
++  #
+   # Enable or disable the elliptic curve crypto implementation
+   #
+   AC_DEFUN_ONCE([JDKOPT_DETECT_INTREE_EC],
+--- common/autoconf/spec.gmk.in
++++ common/autoconf/spec.gmk.in
+@@ -283,6 +283,9 @@
+ # Enable unlimited crypto policy
+ UNLIMITED_CRYPTO=@UNLIMITED_CRYPTO@
+ 
++# Build static libjli on bsd
++BSD_STATIC_LIBJLI=@BSD_STATIC_LIBJLI@
++
+ # Necessary additional compiler flags to compile X11
+ X_CFLAGS:=@X_CFLAGS@
+ X_LIBS:=@X_LIBS@
+--- jdk/make/CompileLaunchers.gmk
++++ jdk/make/CompileLaunchers.gmk
+@@ -49,7 +49,7 @@
+   ORIGIN_ROOT := /..
+ endif
+ 
+-ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx), )
++ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), )
+   ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN)
+ else
+   ORIGIN_ARG := $(call SET_EXECUTABLE_ORIGIN,$(ORIGIN_ROOT)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli)
+@@ -90,9 +90,15 @@
+   $1_LDFLAGS := $3
+   $1_LDFLAGS_SUFFIX :=
+   ifeq ($(OPENJDK_TARGET_OS), bsd)
+-    $1_LDFLAGS += -Wl,--whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
+-        -Wl,--no-whole-archive
+-    $1_LDFLAGS_SUFFIX += -pthread
++    ifeq ($(BSD_STATIC_LIBJLI), bsd)
++      $1_LDFLAGS += -Wl,--whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
++          -Wl,--no-whole-archive
++      $1_LDFLAGS_SUFFIX += -pthread
++    else
++      $1_LDFLAGS += \
++          $(call SET_SHARED_LIBRARY_NAME,$(LIBRARY_PREFIX)$(SHARED_LIBRARY_SUFFIX))
++      $1_LDFLAGS_SUFFIX += -L$(JDK_OUTPUTDIR)/lib$(OPENJDK_TARGET_CPU_LIBDIR)/jli -ljli -pthread
++    endif
+   endif
+ 
+   ifeq ($(OPENJDK_TARGET_OS), macosx)
+@@ -203,7 +209,7 @@
+ 
+   BUILD_LAUNCHERS += $$(BUILD_LAUNCHER_$1)
+ 
+-  ifneq (,$(filter $(OPENJDK_TARGET_OS), bsd macosx aix))
++  ifneq (,$(filter $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx aix))
+     $$(BUILD_LAUNCHER_$1): $(JDK_OUTPUTDIR)/objs/libjli_static.a
+   endif
+ 
+--- jdk/make/lib/CoreLibraries.gmk
++++ jdk/make/lib/CoreLibraries.gmk
+@@ -466,7 +466,7 @@
+ 
+   BUILD_LIBRARIES += $(BUILD_LIBJLI_STATIC)
+ 
+-else ifneq ($(findstring $(OPENJDK_TARGET_OS), bsd macosx), )
++else ifneq ($(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx), )
+   #
+   # On BSD they do partial (incremental) linking of libjli_static.a
+   # code it here...rather than add support to NativeCompilation
+--- jdk/make/lib/ServiceabilityLibraries.gmk
++++ jdk/make/lib/ServiceabilityLibraries.gmk
+@@ -246,6 +246,15 @@
+   LIBINSTRUMENT_CFLAGS += -Dstrcasecmp=stricmp
+ endif
+ 
++ifeq ($(OPENJDK_TARGET_OS), bsd)
++  ifeq ($(BSD_STATIC_LIBJLI), bsd)
++    LIBINSTRUMENT_LDFLAGS += -Xlinker --whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
++        -Xlinker --no-whole-archive 
++  else
++    LIBINSTRUMENT_LDFLAGS += $(call SET_SHARED_LIBRARY_ORIGIN,/jli)
++  endif
++endif
++
+ $(eval $(call SetupNativeCompilation,BUILD_LIBINSTRUMENT, \
+     LIBRARY := instrument, \
+     OUTPUT_DIR := $(INSTALL_LIBRARIES_HERE), \
+@@ -263,8 +272,6 @@
+         $(LIBINSTRUMENT_LDFLAGS), \
+     LDFLAGS_linux := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
+     LDFLAGS_solaris := $(call SET_SHARED_LIBRARY_ORIGIN,/jli), \
+-    LDFLAGS_bsd := -Xlinker --whole-archive $(JDK_OUTPUTDIR)/objs/libjli_static.a \
+-        -Xlinker --no-whole-archive, \
+     LDFLAGS_macosx := -Xlinker -all_load $(JDK_OUTPUTDIR)/objs/libjli_static.a \
+         -framework Cocoa -framework Security -framework ApplicationServices, \
+     LDFLAGS_SUFFIX := $(LIBINSTRUMENT_LDFLAGS_SUFFIX), \
+@@ -281,7 +288,7 @@
+     OBJECT_DIR := $(LIBINSTRUMENT_DIR), \
+     DEBUG_SYMBOLS := true))
+ 
+-ifneq (, $(findstring $(OPENJDK_TARGET_OS), bsd macosx windows aix))
++ifneq (, $(findstring $(OPENJDK_TARGET_OS), $(BSD_STATIC_LIBJLI) macosx windows aix))
+   $(BUILD_LIBINSTRUMENT): $(JDK_OUTPUTDIR)/objs/$(LIBRARY_PREFIX)jli_static$(STATIC_LIBRARY_SUFFIX)
+ else
+   $(BUILD_LIBINSTRUMENT): $(INSTALL_LIBRARIES_HERE)/jli/$(LIBRARY_PREFIX)jli$(SHARED_LIBRARY_SUFFIX)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201505192213.t4JMDp0w020001>