# This file contains setup for build features that require external packages. It# is included once for each configured packaging architecture (with# TARGET_PACKAGING_ARCH set accordingly).local architecture = $(TARGET_PACKAGING_ARCH) ;local secondaryArchSubDir = [ MultiArchIfPrimary "" : /$(architecture) ] ;local libDir = lib$(secondaryArchSubDir) ;local developLibDir = develop/lib$(secondaryArchSubDir) ;local developHeadersDir = develop/headers$(secondaryArchSubDir) ;local unavailableBuildFeatures ;# SSL# Automatically enable the SSL feature, when the OpenSSL package is enabled.if [ IsHaikuImagePackageAdded openssl3 ] {HAIKU_BUILD_FEATURE_SSL = 1 ;}if $(HAIKU_BUILD_FEATURE_SSL) {if [ IsPackageAvailable openssl3_devel ] {ExtractBuildFeatureArchives openssl :file: base openssl3runtime: libfile: devel openssl3_develdepends: baselibraries:$(developLibDir)/libcrypto.so$(developLibDir)/libssl.soheaders: $(developHeadersDir);EnableBuildFeatures openssl ;} else {unavailableBuildFeatures += openssl ;}}# gcc_syslibsif $(TARGET_PACKAGING_ARCH) != x86_gcc2 {if [ IsPackageAvailable gcc_syslibs ] {ExtractBuildFeatureArchives gcc_syslibs :file: base gcc_syslibslibgcc_s.so.1: $(libDir)/libgcc_s.so.1libstdc++.so: $(libDir)/libstdc++.solibsupc++.so: $(libDir)/libsupc++.so;EnableBuildFeatures gcc_syslibs ;} else {unavailableBuildFeatures += gcc_syslibs ;}}# gcc_syslibs_develif [ IsPackageAvailable gcc_syslibs_devel ] {if $(TARGET_PACKAGING_ARCH) = x86_gcc2 {ExtractBuildFeatureArchives gcc_syslibs_devel :file: base gcc_syslibs_devellibgcc.a: $(developLibDir)/libgcc.alibgcc_eh.a:libgcc-kernel.a: $(developLibDir)/libgcc.alibgcc_eh-kernel.a:libstdc++.a:libsupc++.a:libsupc++-kernel.a:;} else {ExtractBuildFeatureArchives gcc_syslibs_devel :file: base gcc_syslibs_devellibgcc.a: $(developLibDir)/libgcc.alibgcc_eh.a: $(developLibDir)/libgcc_eh.alibgcc-kernel.a: $(developLibDir)/libgcc-kernel.alibgcc_eh-kernel.a: $(developLibDir)/libgcc_eh.alibgcc-boot.a: $(developLibDir)/libgcc-boot.alibgcc_eh-boot.a: $(developLibDir)/libgcc_eh-boot.alibstdc++.a: $(developLibDir)/libstdc++.alibsupc++.a: $(developLibDir)/libsupc++.alibsupc++-kernel.a: $(developLibDir)/libsupc++-kernel.alibsupc++-boot.a: $(developLibDir)/libsupc++-boot.ac++-headers: $(developHeadersDir)/c++gcc-headers: $(developHeadersDir)/gcc;}EnableBuildFeatures gcc_syslibs_devel ;} else {unavailableBuildFeatures += gcc_syslibs_devel ;}# ICUif [ IsPackageAvailable icu_devel ] {ExtractBuildFeatureArchives icu :file: base icuruntime: libfile: devel icu_develdepends: baselibraries:$(developLibDir)/libicudata.so$(developLibDir)/libicui18n.so$(developLibDir)/libicuio.so$(developLibDir)/libicuuc.soheaders: $(developHeadersDir);EnableBuildFeatures icu ;} else if [ IsPackageAvailable icu74_devel ] {ExtractBuildFeatureArchives icu :file: base icu74runtime: libfile: devel icu74_develdepends: baselibraries:$(developLibDir)/libicudata.so$(developLibDir)/libicui18n.so$(developLibDir)/libicuio.so$(developLibDir)/libicuuc.soheaders: $(developHeadersDir);EnableBuildFeatures icu ;} else if [ IsPackageAvailable icu70_devel ] {ExtractBuildFeatureArchives icu :file: base icu70runtime: libfile: devel icu70_develdepends: baselibraries:$(developLibDir)/libicudata.so$(developLibDir)/libicui18n.so$(developLibDir)/libicuio.so$(developLibDir)/libicuuc.soheaders: $(developHeadersDir);EnableBuildFeatures icu ;} else {unavailableBuildFeatures += icu ;}# Giflibif [ IsPackageAvailable giflib_devel ] {ExtractBuildFeatureArchives giflib :file: base giflibruntime: libfile: devel giflib_develdepends: baselibrary: $(developLibDir)/libgif.so.7headers: $(developHeadersDir);EnableBuildFeatures giflib ;} else {unavailableBuildFeatures += giflib ;}# GLU (GL Utilities)if [ IsPackageAvailable glu_devel ] {ExtractBuildFeatureArchives glu :file: base gluruntime: libfile: devel glu_develdepends: baselibrary: $(developLibDir)/libGLU.soheaders: $(developHeadersDir);EnableBuildFeatures glu ;} else {unavailableBuildFeatures += glu ;}# GL (GL Kit, Mesa3D)if [ IsPackageAvailable mesa_devel ] {ExtractBuildFeatureArchives mesa :file: base mesaruntime: libfile: devel mesa_develdepends: baselibrary: $(developLibDir)/libGL.soheaders: $(developHeadersDir)/os/opengl;EnableBuildFeatures mesa ;} else {unavailableBuildFeatures += mesa ;}# FFmpegif [ IsPackageAvailable ffmpeg6_devel ] {local ffmpegLibs = libavformat.so libavcodec.so libavfilter.so libswscale.solibavutil.so libswresample.so ;ExtractBuildFeatureArchives ffmpeg :file: base ffmpeg6runtime: libfile: devel ffmpeg6_develdepends: baselibraries: $(developLibDir)/$(ffmpegLibs)headers: $(developHeadersDir);EnableBuildFeatures ffmpeg ;} else {unavailableBuildFeatures += ffmpeg ;}# Fluidliteif [ IsPackageAvailable fluidlite_devel ] && [ IsPackageAvailable libvorbis_devel ] {ExtractBuildFeatureArchives fluidlite :file: devel fluidlite_devellibrary: $(developLibDir)/libfluidlite-static.aheaders: $(developHeadersDir);EnableBuildFeatures fluidlite ;} else {unavailableBuildFeatures += fluidlite ;}# Libvorbisif [ IsPackageAvailable libvorbis_devel ] {ExtractBuildFeatureArchives libvorbis :file: base libvorbisruntime: libfile: devel libvorbis_develdepends: baselibrary: $(developLibDir)/libvorbisfile.so.3headers: $(developHeadersDir);EnableBuildFeatures libvorbis ;} else {unavailableBuildFeatures += libvorbis ;}# Freetypeif [ IsPackageAvailable freetype_devel ] {ExtractBuildFeatureArchives freetype :file: base freetyperuntime: libfile: devel freetype_develdepends: baselibrary: $(developLibDir)/libfreetype.soheaders: $(developHeadersDir) $(developHeadersDir)/freetype2;EnableBuildFeatures freetype ;} else {unavailableBuildFeatures += freetype ;}# fontconfigif [ IsPackageAvailable fontconfig_devel ] {ExtractBuildFeatureArchives fontconfig :file: base fontconfigruntime: libfile: devel fontconfig_develdepends: baselibrary: $(developLibDir)/libfontconfig.soheaders: $(developHeadersDir) $(developHeadersDir)/fontconfig;EnableBuildFeatures fontconfig ;} else {unavailableBuildFeatures += fontconfig ;}# Gutenprintif [ IsPackageAvailable gutenprint9_devel ] {ExtractBuildFeatureArchives gutenprint :file: base gutenprint9runtime: libfile: devel gutenprint9_develdepends: baselibrary: $(developLibDir)/libgutenprint.soheaders: $(developHeadersDir) $(developHeadersDir)/gutenprint;EnableBuildFeatures gutenprint ;} else {unavailableBuildFeatures += gutenprint ;}# WebKitif [ IsPackageAvailable haikuwebkit_devel ] {ExtractBuildFeatureArchives webkit :file: base haikuwebkitruntime: libfile: devel haikuwebkit_develdepends: baselibraries:$(developLibDir)/libWebKitLegacy.soheaders: $(developHeadersDir);EnableBuildFeatures webkit ;} else {unavailableBuildFeatures += webkit ;}# libpngif [ IsPackageAvailable libpng16_devel ] {ExtractBuildFeatureArchives libpng :file: base libpng16runtime: libfile: devel libpng16_develdepends: baselibrary: $(developLibDir)/libpng16.soheaders: $(developHeadersDir);EnableBuildFeatures libpng ;} else {unavailableBuildFeatures += libpng ;}# libicnsif [ IsPackageAvailable libicns_devel ] {ExtractBuildFeatureArchives libicns :file: base libicnsruntime: libfile: devel libicns_develdepends: baselibrary: $(developLibDir)/libicns.so.1headers: $(developHeadersDir);EnableBuildFeatures libicns ;} else {unavailableBuildFeatures += libicns ;}# Jasperif [ IsPackageAvailable jasper_devel ] {ExtractBuildFeatureArchives jasper :file: base jasperruntime: libfile: devel jasper_develdepends: baselibrary: $(developLibDir)/libjasper.so.4headers: $(developHeadersDir) $(developHeadersDir)/jasper;EnableBuildFeatures jasper ;} else {unavailableBuildFeatures += jasper ;}# jpegif [ IsPackageAvailable libjpeg_turbo_devel ] {ExtractBuildFeatureArchives jpeg :file: base libjpeg_turboruntime: libfile: devel libjpeg_turbo_develdepends: baselibrary: $(developLibDir)/libjpeg.soheaders: $(developHeadersDir);EnableBuildFeatures jpeg ;} else {unavailableBuildFeatures += jpeg ;}# zlibif [ IsPackageAvailable zlib_devel ] {ExtractBuildFeatureArchives zlib :file: base zlibruntime: libfile: devel zlib_develdepends: baselibrary: $(developLibDir)/libz.soheaders: $(developHeadersDir)# sources are required for the primary architecture onlyprimary @{file: source zlib_sourcesources: develop/sources/%portRevisionedName%/sources}@;EnableBuildFeatures zlib ;} else {unavailableBuildFeatures += zlib ;}# libeditif [ IsPackageAvailable libedit_devel ] {ExtractBuildFeatureArchives libedit :file: base libeditruntime: libfile: devel libedit_develdepends: baselibrary: $(developLibDir)/libedit.soheaders: $(developHeadersDir);EnableBuildFeatures libedit ;} else {unavailableBuildFeatures += libedit ;}# qrencodeif [ IsPackageAvailable qrencode_kdl_devel ] {ExtractBuildFeatureArchives libqrencode_kdl :file: devel qrencode_kdl_devellibrary: $(developLibDir)/libqrencode_kdl.aheaders: $(developHeadersDir);EnableBuildFeatures libqrencode_kdl ;} else {unavailableBuildFeatures += qrencode_kdl ;}# tiffif [ IsPackageAvailable tiff_devel ] {ExtractBuildFeatureArchives tiff :file: base tiffruntime: libfile: devel tiff_develdepends: baselibrary: $(developLibDir)/libtiff.soheaders: $(developHeadersDir) $(developHeadersDir)/tiff;EnableBuildFeatures tiff ;} else {unavailableBuildFeatures += tiff ;}# libdvdreadif [ IsPackageAvailable libdvdread_devel ] {ExtractBuildFeatureArchives libdvdread :file: base libdvdreadruntime: libfile: devel libdvdread_develdepends: baselibraries: $(developLibDir)/libdvdread.so.4headers: $(developHeadersDir);EnableBuildFeatures libdvdread ;} else {unavailableBuildFeatures += libdvdread ;}# libdvdnavif [ IsPackageAvailable libdvdnav_devel ] {ExtractBuildFeatureArchives libdvdnav :file: base libdvdnavruntime: libfile: devel libdvdnav_develdepends: baselibraries: $(developLibDir)/libdvdnav.so.4headers: $(developHeadersDir);EnableBuildFeatures libdvdnav ;} else {unavailableBuildFeatures += libdvdnav ;}# librawif [ IsPackageAvailable libraw_devel ] {ExtractBuildFeatureArchives libraw :file: base librawruntime: libfile: devel libraw_develdepends: baselibraries: $(developLibDir)/libraw.soheaders: $(developHeadersDir);EnableBuildFeatures libraw ;} else {unavailableBuildFeatures += libraw ;}# libwebpif [ IsPackageAvailable libwebp_devel ] {if $(HAIKU_PACKAGING_ARCH) = x86 && $(TARGET_PACKAGING_ARCH) = x86_gcc2 {ExtractBuildFeatureArchives libwebp :file: base libwebpruntime: libfile: devel libwebp_develdepends: baselibrary: $(developLibDir)/libwebp.so.6headers: $(developHeadersDir) $(developHeadersDir)/webp;} else {ExtractBuildFeatureArchives libwebp :file: base libwebpruntime: libfile: devel libwebp_develdepends: baselibrary: $(developLibDir)/libwebp.so.7headers: $(developHeadersDir) $(developHeadersDir)/webp;}EnableBuildFeatures libwebp ;} else {unavailableBuildFeatures += libwebp ;}# libavifif [ IsPackageAvailable libavif1.0_devel ] {ExtractBuildFeatureArchives libavif :file: base libavif1.0runtime: libfile: devel libavif1.0_develdepends: baselibrary: $(developLibDir)/libavif.soheaders: $(developHeadersDir) $(developHeadersDir)/avif;EnableBuildFeatures libavif ;} else {unavailableBuildFeatures += libavif ;}# live555if [ IsPackageAvailable live555_devel ] {ExtractBuildFeatureArchives live555 :file: devel live555_devellibraries:$(developLibDir)/libliveMedia.a$(developLibDir)/libBasicUsageEnvironment.a$(developLibDir)/libgroupsock.a$(developLibDir)/libUsageEnvironment.aheaders: $(developHeadersDir)$(developHeadersDir)/liveMedia$(developHeadersDir)/BasicUsageEnvironment$(developHeadersDir)/groupsock$(developHeadersDir)/UsageEnvironment;EnableBuildFeatures live555 ;} else {unavailableBuildFeatures += live555 ;}# ncursesif [ IsPackageAvailable ncurses6_devel ] {ExtractBuildFeatureArchives ncurses :file: base ncurses6runtime: libfile: devel ncurses6_develdepends: baselibrary: $(developLibDir)/libncurses.so.6headers: $(developHeadersDir);EnableBuildFeatures ncurses ;} else {unavailableBuildFeatures += ncurses6 ;}# expatif [ IsPackageAvailable expat_devel ] {ExtractBuildFeatureArchives expat :file: base expatruntime: libfile: devel expat_develdepends: baselibrary: $(developLibDir)/libexpat.so.1headers: $(developHeadersDir);EnableBuildFeatures expat ;} else {unavailableBuildFeatures += expat ;}# zstdif [ IsPackageAvailable zstd_devel ] {ExtractBuildFeatureArchives zstd :file: base zstdruntime: libfile: devel zstd_develdepends: baselibrary: $(developLibDir)/libzstd.soheaders: $(developHeadersDir)# sources are required for the primary architecture onlyprimary @{file: source zstd_sourcesources: develop/sources/%portRevisionedName%/sources}@;EnableBuildFeatures zstd ;} else {unavailableBuildFeatures += zstd ;}# Print a diagnostic message with build features not presently available.if $(unavailableBuildFeatures) {Echo "build-feature packages unavailable on $(TARGET_PACKAGING_ARCH):""$(unavailableBuildFeatures)" ;}