On Mon, 2015-04-27 at 21:43 -0400, Kurt Miller wrote: > On Mon, 2015-04-27 at 20:39 -0400, Bryan C. Everly wrote: > > Kurt, > > > > > > Looks like you can't run 'bash ./configure' without ALSA (which > > doesn't exist on OpenBSD) and you can't turn it off with > > --without-alsa (there is an explicit check for this that tells you it > > is required). > > > > > > Am I missing something obvious? > > Hi Bryan, > > Nope. I just hit the same thing trying to catch up to you. OpenBSD > doesn't have alsa, instead it has its own sound subsystem called > sndio. An OpenBSD developer wrote sndio support for the jdk, but > he never signed the OCA so I wasn't able to commit his work here. > Instead I have it as a patch in the ports tree in OpenBSD: > > http://cvsweb.openbsd.org/cgi-bin/cvsweb/ports/devel/jdk/1.7/files/PLATFORM_API_BSDOS_PCM.c?rev=1.1&content-type=text/x-cvsweb-markup&hideattic=1 > > This doesn't help us with the configure issue though since it wasn't > required for OpenJDK 7. > > We're going to need to disable the hard requirement for alsa in a way > that is OpenBSD only. We're likely to hit someplace in the > bsd-port/jdk8/jdk/ portion of the build where it fails to build sound > support due to alsa missing. Then we'll need to figure out how to > disable it for OpenBSD only again there. > > Regards, > -Kurt
Here's where I am at. I can finish configure but I still have an hack in generated-configure.sh for freetype. This is my configure script: cd ~/jdk/jdk8 env -i PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin \ CPPFLAGS=-I/usr/local/include \ LDFLAGS=-L/usr/local/lib \ sh configure \ --with-boot-jdk=/home/truk/jdk/j2sdk-image \ --disable-ccache \ --disable-freetype-bundling \ --disable-zip-debug-info \ --with-cups=/usr/local \ --with-freetype=/usr/X11R6 \ --with-freetype-include=/usr/X11R6/include/freetype2 \ --with-giflib=system \ --with-jobs=16 \ --with-zlib=system \ 2>&1 | tee -a ~/jdk/build-jdk8.log Attached is the diff I'm running with that has a hack for freetype in it. It needs more work to match correctly with versioned shared libs that OpenBSD has. -Kurt
diff -r 37f198f10b62 common/autoconf/generated-configure.sh --- a/common/autoconf/generated-configure.sh Sat Mar 14 10:28:41 2015 -0700 +++ b/common/autoconf/generated-configure.sh Mon Apr 27 22:23:02 2015 -0400 @@ -6910,6 +6910,12 @@ VAR_OS_API=posix VAR_OS_ENV=macosx ;; + openbsd*) + VAR_OS=bsd + VAR_OS_API=posix + VAR_OS_ENV=bsd + VAR_OS_VENDOR=openbsd + ;; *bsd*) VAR_OS=bsd VAR_OS_API=posix @@ -30422,6 +30428,14 @@ $as_echo "pulse" >&6; } fi + if test "x$VAR_OS_VENDOR" = xopenbsd; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking what is not needed on OpenBSD?" >&5 +$as_echo_n "checking what is not needed on OpenBSD?... " >&6; } + ALSA_NOT_NEEDED=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: alsa" >&5 +$as_echo "alsa" >&6; } + fi + if test "x$OPENJDK" = "xfalse"; then FREETYPE_NOT_NEEDED=yes fi @@ -31650,9 +31664,10 @@ FREETYPE_LIB_NAME="${LIBRARY_PREFIX}freetype${SHARED_LIBRARY_SUFFIX}" if ! test -s "$POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME"; then - { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&5 -$as_echo "$as_me: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&6;} - FOUND_FREETYPE=no +# { $as_echo "$as_me:${as_lineno-$LINENO}: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&5 +# $as_echo "$as_me: Could not find $POTENTIAL_FREETYPE_LIB_PATH/$FREETYPE_LIB_NAME. Ignoring location." >&6;} +# FOUND_FREETYPE=no + true else if test "x$OPENJDK_TARGET_OS" = xwindows; then # On Windows, we will need both .lib and .dll file.