libpng and jpeg: build against optional packages.
* added optional feature package for libpng 1.5.12 gcc4/gcc2 x86 and ppc * drop libpng sources and headers from the tree. * added optional feature package for jpeg 8d gcc4/gcc2 x86 and ppc * drop jpeg sources and headers from the tree.
This commit is contained in:
+14
-2
@@ -87,10 +87,10 @@ SYSTEM_LIBS =
|
||||
libbe.so libbsd.so libbnetapi.so
|
||||
libdebug.so libdevice.so
|
||||
libgame.so $(X86_ONLY)libGL.so libgnu.so
|
||||
libjpeg.so
|
||||
$(HAIKU_JPEG_CURRENT_LIB)
|
||||
libmail.so libmedia.so libmidi.so libmidi2.so
|
||||
libnetwork.so
|
||||
libpng.so
|
||||
$(HAIKU_LIBPNG_CURRENT_LIB)
|
||||
<revisioned>libroot.so libroot-addon-icu.so
|
||||
libscreensaver.so
|
||||
libtextencoding.so libtiff.so libtracker.so libtranslation.so
|
||||
@@ -338,6 +338,18 @@ AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LIB:BS)
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_FREETYPE_CURRENT_LINK)
|
||||
: libfreetype.so : : true ;
|
||||
|
||||
# libpng.so links to the current libpng
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LIB:BS)
|
||||
: $(HAIKU_LIBPNG_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_LIBPNG_CURRENT_LINK)
|
||||
: libpng.so : : true ;
|
||||
|
||||
# libjpeg.so links to the current libjpeg
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LIB:BS)
|
||||
: $(HAIKU_JPEG_CURRENT_LINK) : : true ;
|
||||
AddSymlinkToHaikuHybridImage system lib : $(HAIKU_JPEG_CURRENT_LINK)
|
||||
: libjpeg.so : : true ;
|
||||
|
||||
# servers
|
||||
AddFilesToHaikuImage system servers : $(SYSTEM_SERVERS) ;
|
||||
|
||||
|
||||
@@ -501,3 +501,83 @@ if $(HAIKU_BUILD_FEATURE_WEBKIT) {
|
||||
HAIKU_WEBKIT_HEADERS = [ FDirName $(HAIKU_WEBKIT_DIR) include ] ;
|
||||
}
|
||||
}
|
||||
|
||||
# libpng
|
||||
local libpngBaseURL = $(baseURL)/lib ;
|
||||
if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 {
|
||||
if $(TARGET_ARCH) = ppc {
|
||||
HAIKU_LIBPNG_FILE = libpng-1.5.12-ppc-gcc4-2012-08-27.zip ;
|
||||
} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
|
||||
HAIKU_LIBPNG_FILE = libpng-1.5.12-x86-gcc4-2012-08-23.zip ;
|
||||
} else {
|
||||
HAIKU_LIBPNG_FILE = libpng-1.5.12-x86-gcc2-2012-08-23.zip ;
|
||||
}
|
||||
|
||||
local libpngZipFile = [ DownloadFile $(HAIKU_LIBPNG_FILE)
|
||||
: $(libpngBaseURL)/$(HAIKU_LIBPNG_FILE) ] ;
|
||||
|
||||
HAIKU_LIBPNG_DIR = [ FDirName $(HAIKU_OPTIONAL_BUILD_PACKAGES_DIR)
|
||||
$(HAIKU_LIBPNG_FILE:B) ] ;
|
||||
|
||||
HAIKU_LIBPNG_HEADERS_DEPENDENCY = [ ExtractArchive $(HAIKU_LIBPNG_DIR)
|
||||
: common/include : $(libpngZipFile)
|
||||
: extracted-libpng ] ;
|
||||
|
||||
HAIKU_LIBPNG_LIB = [ ExtractArchive $(HAIKU_LIBPNG_DIR)
|
||||
:
|
||||
common/lib/libpng.so
|
||||
: $(libpngZipFile)
|
||||
: extracted-libpng ] ;
|
||||
HAIKU_LIBPNG_CURRENT_LIB = [ ExtractArchive $(HAIKU_LIBPNG_DIR)
|
||||
:
|
||||
common/lib/libpng15.so.15.12.0
|
||||
: $(libpngZipFile)
|
||||
: extracted-libpng ] ;
|
||||
Depends $(HAIKU_LIBPNG_LIB) $(HAIKU_LIBPNG_CURRENT_LIB) : $(HAIKU_LIBPNG_HEADERS_DEPENDENCY) ;
|
||||
|
||||
HAIKU_LIBPNG_CURRENT_LINK = libpng.so.15 ;
|
||||
|
||||
HAIKU_LIBPNG_HEADERS = [ FDirName $(HAIKU_LIBPNG_DIR) common include ] ;
|
||||
} else {
|
||||
Echo "libpng support not available on $(TARGET_ARCH)" ;
|
||||
}
|
||||
|
||||
# jpeg
|
||||
local jpegBaseURL = $(baseURL)/lib ;
|
||||
if $(TARGET_ARCH) = ppc || $(TARGET_ARCH) = x86 {
|
||||
if $(TARGET_ARCH) = ppc {
|
||||
HAIKU_JPEG_FILE = jpeg-8d-ppc-gcc4-2012-08-27.zip ;
|
||||
} else if $(HAIKU_GCC_VERSION[1]) >= 4 {
|
||||
HAIKU_JPEG_FILE = jpeg-8d-x86-gcc4-2012-08-23.zip ;
|
||||
} else {
|
||||
HAIKU_JPEG_FILE = jpeg-8d-x86-gcc2-2012-08-23.zip ;
|
||||
}
|
||||
|
||||
local jpegZipFile = [ DownloadFile $(HAIKU_JPEG_FILE)
|
||||
: $(jpegBaseURL)/$(HAIKU_JPEG_FILE) ] ;
|
||||
|
||||
HAIKU_JPEG_DIR = [ FDirName $(HAIKU_OPTIONAL_BUILD_PACKAGES_DIR)
|
||||
$(HAIKU_JPEG_FILE:B) ] ;
|
||||
|
||||
HAIKU_JPEG_HEADERS_DEPENDENCY = [ ExtractArchive $(HAIKU_JPEG_DIR)
|
||||
: common/include : $(jpegZipFile)
|
||||
: extracted-jpeg ] ;
|
||||
|
||||
HAIKU_JPEG_LIB = [ ExtractArchive $(HAIKU_JPEG_DIR)
|
||||
:
|
||||
common/lib/libjpeg.so
|
||||
: $(jpegZipFile)
|
||||
: extracted-jpeg ] ;
|
||||
HAIKU_JPEG_CURRENT_LIB = [ ExtractArchive $(HAIKU_JPEG_DIR)
|
||||
:
|
||||
common/lib/libjpeg.so.8.4.0
|
||||
: $(jpegZipFile)
|
||||
: extracted-jpeg ] ;
|
||||
Depends $(HAIKU_JPEG_LIB) $(HAIKU_JPEG_CURRENT_LIB) : $(HAIKU_JPEG_HEADERS_DEPENDENCY) ;
|
||||
|
||||
HAIKU_JPEG_CURRENT_LINK = libjpeg.so.8 ;
|
||||
|
||||
HAIKU_JPEG_HEADERS = [ FDirName $(HAIKU_JPEG_DIR) common include ] ;
|
||||
} else {
|
||||
Echo "jpeg support not available on $(TARGET_ARCH)" ;
|
||||
}
|
||||
|
||||
@@ -841,9 +841,7 @@ if [ IsOptionalHaikuImagePackageAdded DevelopmentMin ] && $(TARGET_ARCH) = x86 {
|
||||
AddHeaderDirectoryToHaikuImage compatibility gnu : gnu ;
|
||||
|
||||
# third party libs headers
|
||||
AddHeaderDirectoryToHaikuImage libs jpeg : 3rdparty ;
|
||||
AddHeaderDirectoryToHaikuImage libs ncurses : 3rdparty ;
|
||||
AddHeaderDirectoryToHaikuImage libs png : 3rdparty ;
|
||||
AddHeaderDirectoryToHaikuImage libs termcap : 3rdparty ;
|
||||
AddHeaderDirectoryToHaikuImage libs tiff : 3rdparty ;
|
||||
AddHeaderDirectoryToHaikuImage libs zlib : 3rdparty ;
|
||||
|
||||
Reference in New Issue
Block a user