You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by hi...@apache.org on 2008/06/27 16:36:18 UTC
svn commit: r672283 - in /harmony/enhanced/classlib/trunk: make/
modules/awt/src/main/native/gl/unix/
modules/awt/src/main/native/jpegdecoder/unix/
modules/awt/src/main/native/lcmm/unix/
modules/imageio/src/main/native/jpegencoder/unix/ modules/imageio...
Author: hindessm
Date: Fri Jun 27 07:36:18 2008
New Revision: 672283
URL: http://svn.apache.org/viewvc?rev=672283&view=rev
Log:
Use system libraries on unix for lcms, jpeg, and png. See:
http://mail-archives.apache.org/mod_mbox/harmony-dev/200806.mbox/%3c200806160710.m5G7AEvt003543@d06av03.portsmouth.uk.ibm.com%3e
Modified:
harmony/enhanced/classlib/trunk/make/depends.xml
harmony/enhanced/classlib/trunk/modules/awt/src/main/native/gl/unix/makefile
harmony/enhanced/classlib/trunk/modules/awt/src/main/native/jpegdecoder/unix/makefile
harmony/enhanced/classlib/trunk/modules/awt/src/main/native/lcmm/unix/makefile
harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/jpegencoder/unix/makefile
harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/pngencoder/unix/makefile
Modified: harmony/enhanced/classlib/trunk/make/depends.xml
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/make/depends.xml?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/make/depends.xml (original)
+++ harmony/enhanced/classlib/trunk/make/depends.xml Fri Jun 27 07:36:18 2008
@@ -164,168 +164,29 @@
<touch file="${xerces.dir}/xercesImpl.jar" />
</target>
- <!--
- * FIXME : the following awful little hack is because we noticed that for whatever
- * reason, we can't link with libjpg.a et al on at least to kinds of 64-bit linux
- -->
-
- <target name="-check-unix-common" if="is.unix">
+ <target name="-check-unix" if="is.unix">
<property name="lcms.msg"
value="liblcms development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
${line.separator}For Debian/Ubuntu try: apt-get install liblcms1-dev
${line.separator}For Fedora try: yum install lcms-devel" />
- <mkdir dir="depends/libs/build/lcms" />
- <check-one-link src="${lcms.home}/include/icc34.h"
- dest="depends/libs/build/lcms/icc34.h"
- message="${lcms.msg}" />
- <check-one-link src="${lcms.home}/include/lcms.h"
- dest="depends/libs/build/lcms/lcms.h"
- message="${lcms.msg}" />
+ <check-os-file src="${lcms.home}/include/lcms.h"
+ message="${lcms.msg}" />
<property name="png.msg"
value="libpng development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
${line.separator}For Debian/Ubuntu try: apt-get install libpng12-dev
${line.separator}For Fedora try: yum install libpng-devel" />
- <mkdir dir="depends/libs/build/png" />
- <check-one-link src="${png.home}/include/pngconf.h"
- dest="depends/libs/build/png/pngconf.h"
- message="${png.msg}" />
- <check-one-link src="${png.home}/include/png.h"
- dest="depends/libs/build/png/png.h"
- message="${png.msg}" />
+ <check-os-file src="${png.home}/include/png.h"
+ message="${png.msg}" />
<property name="jpeg.msg"
value="libjpeg development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
-${line.separator}For Debian/Ubuntu try: apt-get install libjpeg62-dev
-${line.separator}For Fedora try: yum install libjpeg-devel" />
- <mkdir dir="depends/libs/build/jpeg" />
- <check-one-link src="${jpeg.home}/include/jconfig.h"
- dest="depends/libs/build/jpeg/jconfig.lnx"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jpeglib.h"
- dest="depends/libs/build/jpeg/jpeglib.h"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jmorecfg.h"
- dest="depends/libs/build/jpeg/jmorecfg.h"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jerror.h"
- dest="depends/libs/build/jpeg/jerror.h"
- message="${jpeg.msg}" />
- </target>
-
- <target name="-check-unix-x86" if="is.x86" unless="is.windows" depends="-check-unix-common">
- <check-one-link src="${lcms.home}/lib/liblcms.a"
- dest="depends/libs/build/lcms/liblcms.${hy.platform}"
- message="${lcms.msg}" />
-
- <check-one-link src="${png.home}/lib/libpng.a"
- dest="depends/libs/build/png/libpng.${hy.platform}"
- message="${png.msg}" />
-
- <check-one-link src="${jpeg.home}/lib/libjpeg.a"
- dest="depends/libs/build/jpeg/libjpeg.${hy.platform}"
- message="${jpeg.msg}" />
- </target>
-
- <target name="-check-unix-x86_64" if="is.x86_64" unless="is.windows" depends="-check-unix-common">
- <condition property="lcms.lib.home" value="${lcms.home}/lib64" else="${lcms.home}/lib">
- <available file="${lcms.home}/lib64/liblcms.so"/>
- </condition>
- <check-one-link src="${lcms.lib.home}/liblcms.so"
- dest="depends/libs/build/lcms/liblcms.${hy.platform}"
- message="${lcms.msg}" />
-
- <condition property="png.lib.home" value="${png.home}/lib64" else="${png.home}/lib">
- <available file="${png.home}/lib64/libpng.so"/>
- </condition>
- <check-one-link src="${png.lib.home}/libpng.so"
- dest="depends/libs/build/png/libpng.${hy.platform}"
- message="${png.msg}" />
-
- <condition property="jpeg.lib.home" value="${jpeg.home}/lib64" else="${jpeg.home}/lib">
- <available file="${jpeg.home}/lib64/libjpeg.so"/>
- </condition>
- <check-one-link src="${jpeg.lib.home}/libjpeg.so"
- dest="depends/libs/build/jpeg/libjpeg.${hy.platform}"
- message="${jpeg.msg}" />
- </target>
-
- <target name="-check-unix-ia64" if="is.ia64" unless="is.windows" depends="-check-unix-common">
- <check-one-link src="${lcms.home}/lib/liblcms.a"
- dest="depends/libs/build/lcms/liblcms.${hy.platform}"
- message="${lcms.msg}" />
-
- <check-one-link src="${png.home}/lib/libpng.a"
- dest="depends/libs/build/png/libpng.${hy.platform}"
- message="${png.msg}" />
-
- <check-one-link src="${jpeg.home}/lib/libjpeg.a"
- dest="depends/libs/build/jpeg/libjpeg.${hy.platform}"
- message="${jpeg.msg}" />
- </target>
-
- <target name="-check-unix" if="is.unix" depends="-check-unix-x86, -check-unix-x86_64, -check-unix-ia64">
-
-<!-- <property name="lcms.msg"
- value="liblcms development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
-${line.separator}For Debian/Ubuntu try: apt-get install liblcms1-dev
-${line.separator}For Fedora try: yum install lcms-devel" />
- <mkdir dir="depends/libs/build/lcms" />
- <check-one-link src="${lcms.home}/lib/liblcms.a"
- dest="depends/libs/build/lcms/liblcms.${hy.platform}"
- message="${lcms.msg}" />
- <check-one-link src="${lcms.home}/include/icc34.h"
- dest="depends/libs/build/lcms/icc34.h"
- message="${lcms.msg}" />
- <check-one-link src="${lcms.home}/include/lcms.h"
- dest="depends/libs/build/lcms/lcms.h"
- message="${lcms.msg}" />
-
-
- <property name="png.msg"
- value="libpng development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
-${line.separator}For Debian/Ubuntu try: apt-get install libpng12-dev
-${line.separator}For Fedora try: yum install libpng-devel" />
- <mkdir dir="depends/libs/build/png" />
- <check-one-link src="${png.home}/lib/libpng.a"
- dest="depends/libs/build/png/libpng.${hy.platform}"
- message="${png.msg}" />
- <check-one-link src="${png.home}/include/pngconf.h"
- dest="depends/libs/build/png/pngconf.h"
- message="${png.msg}" />
- <check-one-link src="${png.home}/include/png.h"
- dest="depends/libs/build/png/png.h"
- message="${png.msg}" />
-
-
- <property name="jpeg.msg"
- value="libjpeg development package not installed
-${line.separator}See depends/libs/build/README.txt for further details.
${line.separator}For Debian/Ubuntu try: apt-get install libjpeg62-dev
${line.separator}For Fedora try: yum install libjpeg-devel" />
<mkdir dir="depends/libs/build/jpeg" />
- <check-one-link src="${jpeg.home}/lib/libjpeg.a"
- dest="depends/libs/build/jpeg/libjpeg.${hy.platform}"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jconfig.h"
- dest="depends/libs/build/jpeg/jconfig.lnx"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jpeglib.h"
- dest="depends/libs/build/jpeg/jpeglib.h"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jmorecfg.h"
- dest="depends/libs/build/jpeg/jmorecfg.h"
- message="${jpeg.msg}" />
- <check-one-link src="${jpeg.home}/include/jerror.h"
- dest="depends/libs/build/jpeg/jerror.h"
- message="${jpeg.msg}" />
- -->
+ <check-os-file src="${jpeg.home}/include/jconfig.h"
+ message="${jpeg.msg}" />
</target>
@@ -490,6 +351,32 @@
</sequential>
</macrodef>
+ <macrodef name="check-os-file">
+ <attribute name="src" />
+ <attribute name="message" />
+ <sequential>
+ <echo level="info">Checking for system file @{src}</echo>
+ <available file="@{src}" type="file"
+ property="@{src}.exists" />
+ <fail>
+ <condition>
+ <not>
+ <isset property="@{src}.exists" />
+ </not>
+ </condition>
+...
+
+Missing dependency. The system file:
+
+ @{src}
+
+is missing.
+
+@{message}
+ </fail>
+ </sequential>
+ </macrodef>
+
<target name="-awt-tar-extract" unless="awtdeps.uptodate">
<echo>Extracting awt dependencies</echo>
<untar src="${awtdeps.tar}" dest="${awtdeps.extract.dir}"
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/native/gl/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/native/gl/unix/makefile?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/native/gl/unix/makefile (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/native/gl/unix/makefile Fri Jun 27 07:36:18 2008
@@ -15,9 +15,9 @@
include $(HY_HDK)/build/make/defines.mk
-PNG_DIR=$(HY_HDK)/../depends/libs/build/png
-INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)/include -I$(PNG_DIR) -I/usr/X11R6/include -I/usr/include -Iinclude
+INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)/include \
+ -I/usr/X11R6/include -I/usr/include -Iinclude
BUILDFILES = \
$(SHAREDSUB)/blitter.o \
@@ -28,8 +28,9 @@
gl.o \
XBlitter.o \
XGraphics2D.o \
- LockingKeys.o \
- libpng.a
+ LockingKeys.o
+
+OSLIBS += -lpng
ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a
@@ -45,6 +46,3 @@
EXPNAME=HYGL_0.1
include $(HY_HDK)/build/make/rules.mk
-
-libpng.a: $(PNG_DIR)/libpng.$(HY_PLATFORM)
- cp $< $@
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/native/jpegdecoder/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/native/jpegdecoder/unix/makefile?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/native/jpegdecoder/unix/makefile (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/native/jpegdecoder/unix/makefile Fri Jun 27 07:36:18 2008
@@ -15,13 +15,11 @@
include $(HY_HDK)/build/make/defines.mk
-JPEG_DIR=$(HY_HDK)/../depends/libs/build/jpeg/
+INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include
-INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include -I$(JPEG_DIR)
+BUILDFILES = $(SHAREDSUB)JpegDecoder.o
-BUILDFILES = \
- $(SHAREDSUB)JpegDecoder.o \
- libjpeg.a
+OSLIBS += -ljpeg
ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a $(MDLLIBZLIB)
@@ -33,14 +31,4 @@
DLLNAME=../libjpegdecoder$(HY_SHLIB_SUFFIX)
EXPNAME=HYJPEGDECODER_0.1
-CLEANFILES=jconfig.h
-
include $(HY_HDK)/build/make/rules.mk
-
-$(SHAREDSUB)JpegDecoder.o: jconfig.h
-
-jconfig.h: $(JPEG_DIR)jconfig.lnx
- cp $< $@
-
-libjpeg.a: $(JPEG_DIR)libjpeg.$(HY_PLATFORM)
- cp $< $@
Modified: harmony/enhanced/classlib/trunk/modules/awt/src/main/native/lcmm/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/awt/src/main/native/lcmm/unix/makefile?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/awt/src/main/native/lcmm/unix/makefile (original)
+++ harmony/enhanced/classlib/trunk/modules/awt/src/main/native/lcmm/unix/makefile Fri Jun 27 07:36:18 2008
@@ -15,17 +15,16 @@
include $(HY_HDK)/build/make/defines.mk
-LCMS_DIR=$(HY_HDK)/../depends/libs/build/lcms
-
-INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)/include -I$(LCMS_DIR)
+INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)/include $(LCMS_INCLUDES)
BUILDFILES = \
$(SHAREDSUB)/cmmerror.o \
$(SHAREDSUB)/cmmio.o \
$(SHAREDSUB)/cmmxforms.o \
$(SHAREDSUB)/NativeCMM.o \
- $(SHAREDSUB)/NativeImageFormat.o \
- liblcms.a
+ $(SHAREDSUB)/NativeImageFormat.o
+
+OSLIBS += -llcms
ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a $(MDLLIBZLIB)
@@ -38,6 +37,3 @@
EXPNAME=HYLCMM_0.1
include $(HY_HDK)/build/make/rules.mk
-
-liblcms.a: $(LCMS_DIR)/liblcms.$(HY_PLATFORM)
- cp $< $@
Modified: harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/jpegencoder/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/jpegencoder/unix/makefile?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/jpegencoder/unix/makefile (original)
+++ harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/jpegencoder/unix/makefile Fri Jun 27 07:36:18 2008
@@ -15,13 +15,11 @@
include $(HY_HDK)/build/make/defines.mk
-JPEG_DIR=$(HY_HDK)/../depends/libs/build/jpeg/
+INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include
-INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include -I$(JPEG_DIR)
+BUILDFILES = $(SHAREDSUB)JpegEncoder.o
-BUILDFILES = \
- $(SHAREDSUB)JpegEncoder.o \
- libjpeg.a
+OSLIBS += -ljpeg
ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a $(MDLLIBZLIB)
@@ -33,15 +31,4 @@
DLLNAME=../libjpegencoder$(HY_SHLIB_SUFFIX)
EXPNAME=HYJPEGENCODER_0.1
-CLEANFILES=jconfig.h
-
include $(HY_HDK)/build/make/rules.mk
-
-$(SHAREDSUB)JpegEncoder.o: jconfig.h
-
-jconfig.h: $(JPEG_DIR)jconfig.lnx
- cp $< $@
-
-libjpeg.a: $(JPEG_DIR)libjpeg.$(HY_PLATFORM)
- cp $< $@
-
Modified: harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/pngencoder/unix/makefile
URL: http://svn.apache.org/viewvc/harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/pngencoder/unix/makefile?rev=672283&r1=672282&r2=672283&view=diff
==============================================================================
--- harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/pngencoder/unix/makefile (original)
+++ harmony/enhanced/classlib/trunk/modules/imageio/src/main/native/pngencoder/unix/makefile Fri Jun 27 07:36:18 2008
@@ -15,13 +15,11 @@
include $(HY_HDK)/build/make/defines.mk
-PNG_DIR=$(HY_HDK)/../depends/libs/build/png/
+INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include
-INCLUDES += -I$(SHARED)common -I$(SHAREDSUB)include -I$(PNG_DIR)
+BUILDFILES = $(SHAREDSUB)pngencoder.o
-BUILDFILES = \
- $(SHAREDSUB)pngencoder.o \
- libpng.a
+OSLIBS += -lpng
ifneq ($(HY_ZIP_API),true)
MDLLIBFILES += $(LIBPATH)libhyzip.a $(MDLLIBZLIB)
@@ -40,6 +38,3 @@
EXPNAME=HYPNGENCODER_0.1
include $(HY_HDK)/build/make/rules.mk
-
-libpng.a: $(PNG_DIR)libpng.$(HY_PLATFORM)
- cp $< $@