From 7bd562abc946385d255e54cdee7b27e14c49e8c8 Mon Sep 17 00:00:00 2001 From: Ingo Weinhold Date: Mon, 5 Aug 2013 06:41:53 +0200 Subject: [PATCH] lib{network,package,shared,agg,icon}: secondary arch support --- src/kits/network/Jamfile | 44 ++--- src/kits/network/libbind/Jamfile | 285 +++++++++++++++---------------- src/kits/package/Jamfile | 124 +++++++------- src/kits/shared/Jamfile | 77 +++++---- src/libs/agg/Jamfile | 64 +++---- src/libs/icon/Jamfile | 79 +++++---- 6 files changed, 352 insertions(+), 321 deletions(-) diff --git a/src/kits/network/Jamfile b/src/kits/network/Jamfile index 91f16bd58c..87cb5a8a1f 100644 --- a/src/kits/network/Jamfile +++ b/src/kits/network/Jamfile @@ -1,29 +1,33 @@ SubDir HAIKU_TOP src kits network ; UsePrivateHeaders app libroot net shared ; -UsePrivateSystemHeaders ; - -SharedLibrary libnetwork.so : - init.cpp - interfaces.cpp - notifications.cpp - socket.cpp - r5_compatibility.cpp - : - be - libbind_dst.o - libbind_inet.o - libbind_irs.o - libbind_isc.o - libbind_nameser.o - libbind_resolv.o - libbind_private.o - $(TARGET_LIBSUPC++) -; local services = [ FGristFiles services ] ; SEARCH on $(services) = [ FDirName $(SUBDIR) libbind defaults ] ; -AddFileDataAttribute libnetwork.so : services : string : $(services) ; + +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + local architecture = $(TARGET_PACKAGING_ARCH) ; + + UsePrivateSystemHeaders ; + + local libnetwork = [ MultiArchDefaultGristFiles libnetwork.so ] ; + SharedLibrary $(libnetwork) : + init.cpp + interfaces.cpp + notifications.cpp + socket.cpp + r5_compatibility.cpp + : + be + libbind.o + $(TARGET_LIBSUPC++) + ; + + AddFileDataAttribute $(libnetwork) : services : string : $(services) ; + } +} SubInclude HAIKU_TOP src kits network libbind ; SubInclude HAIKU_TOP src kits network libnetapi ; diff --git a/src/kits/network/libbind/Jamfile b/src/kits/network/libbind/Jamfile index 721e84e61e..e9f5d1c2f2 100644 --- a/src/kits/network/libbind/Jamfile +++ b/src/kits/network/libbind/Jamfile @@ -1,150 +1,149 @@ SubDir HAIKU_TOP src kits network libbind ; -SetSubDirSupportedPlatforms haiku ; +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + local architecture = $(TARGET_PACKAGING_ARCH) ; -UseHeaders [ FDirName $(SUBDIR) include ] : true ; -SubDirSysHdrs $(SUBDIR) ; + UseHeaders [ FDirName $(SUBDIR) include ] : true ; + SubDirSysHdrs $(SUBDIR) ; -# private sources for this port -SEARCH_SOURCE += [ FDirName $(SUBDIR) src ] ; + # private sources for this port + SEARCH_SOURCE += [ FDirName $(SUBDIR) src ] ; -# BIND sources -SEARCH_SOURCE += [ FDirName $(SUBDIR) bsd ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) dst ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) inet ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) irs ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) isc ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) nameser ] ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) resolv ] ; + # BIND sources + SEARCH_SOURCE += [ FDirName $(SUBDIR) bsd ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) dst ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) inet ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) irs ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) isc ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) nameser ] ; + SEARCH_SOURCE += [ FDirName $(SUBDIR) resolv ] ; -{ - # we want to have the xxx_r functions, too - local defines = _REENTRANT=1 USE_MD5=1 ; - defines = [ FDefines $(defines) ] ; - SubDirCcFlags $(defines) ; - SubDirC++Flags $(defines) ; + { + # we want to have the xxx_r functions, too + local defines = _REENTRANT=1 USE_MD5=1 ; + defines = [ FDefines $(defines) ] ; + SubDirCcFlags $(defines) ; + SubDirC++Flags $(defines) ; + } + + MergeObject libbind.o : + # dst + dst_api.c + hmac_link.c + md5_dgst.c + support.c + + # inet + inet_addr.c + inet_cidr_ntop.c + inet_cidr_pton.c + inet_data.c + inet_lnaof.c + inet_makeaddr.c + inet_net_ntop.c + inet_net_pton.c + inet_neta.c + inet_netof.c + inet_network.c + inet_ntoa.c + inet_ntop.c + inet_pton.c + nsap_addr.c + + # irs + dns.c + dns_ho.c + dns_nw.c + dns_pr.c + dns_sv.c + gai_strerror.c + gen.c + gen_ho.c + gen_ng.c + gen_nw.c + gen_pr.c + gen_sv.c + getaddrinfo.c + gethostent.c + gethostent_r.c + getnameinfo.c + getnetent.c + getnetent_r.c + getnetgrent.c + getnetgrent_r.c + getprotoent.c + getprotoent_r.c + getservent.c + getservent_r.c + hesiod.c + irp.c + irp_ho.c + irp_ng.c + irp_nw.c + irp_pr.c + irp_sv.c + irpmarshall.c + irs_data.c + lcl.c + lcl_ho.c + lcl_ng.c + lcl_nw.c + lcl_pr.c + lcl_sv.cpp + nis.c + nul_ng.c + util.c + + # isc + assertions.c + base64.c + bitncmp.c + ctl_clnt.c + ctl_p.c + ctl_srvr.c + ev_connects.c + ev_files.c + ev_streams.c + ev_timers.c + ev_waits.c + eventlib.c + heap.c + hex.c + logging.c + memcluster.c + movefile.c + tree.c + + # nameser + ns_date.c + ns_name.c + ns_netint.c + ns_parse.c + ns_print.c + ns_samedomain.c + ns_sign.c + ns_ttl.c + ns_verify.c + + # resolv + herror.c + mtctxres.c + res_comp.c + res_data.c + res_debug.c + res_findzonecut.c + res_init.c + res_mkquery.c + res_mkupdate.c + res_query.c + res_send.c + res_sendsigned.c + res_update.c + + # private functions + strsep.c + ; + } } - -MergeObject libbind_dst.o : - dst_api.c - hmac_link.c - md5_dgst.c - support.c -; - -MergeObject libbind_inet.o : - inet_addr.c - inet_cidr_ntop.c - inet_cidr_pton.c - inet_data.c - inet_lnaof.c - inet_makeaddr.c - inet_net_ntop.c - inet_net_pton.c - inet_neta.c - inet_netof.c - inet_network.c - inet_ntoa.c - inet_ntop.c - inet_pton.c - nsap_addr.c -; - -MergeObject libbind_irs.o : - dns.c - dns_ho.c - dns_nw.c - dns_pr.c - dns_sv.c - gai_strerror.c - gen.c - gen_ho.c - gen_ng.c - gen_nw.c - gen_pr.c - gen_sv.c - getaddrinfo.c - gethostent.c - gethostent_r.c - getnameinfo.c - getnetent.c - getnetent_r.c - getnetgrent.c - getnetgrent_r.c - getprotoent.c - getprotoent_r.c - getservent.c - getservent_r.c - hesiod.c - irp.c - irp_ho.c - irp_ng.c - irp_nw.c - irp_pr.c - irp_sv.c - irpmarshall.c - irs_data.c - lcl.c - lcl_ho.c - lcl_ng.c - lcl_nw.c - lcl_pr.c - lcl_sv.cpp - nis.c - nul_ng.c - util.c -; - -MergeObject libbind_isc.o : - assertions.c - base64.c - bitncmp.c - ctl_clnt.c - ctl_p.c - ctl_srvr.c - ev_connects.c - ev_files.c - ev_streams.c - ev_timers.c - ev_waits.c - eventlib.c - heap.c - hex.c - logging.c - memcluster.c - movefile.c - tree.c -; - -MergeObject libbind_nameser.o : - ns_date.c - ns_name.c - ns_netint.c - ns_parse.c - ns_print.c - ns_samedomain.c - ns_sign.c - ns_ttl.c - ns_verify.c -; - -MergeObject libbind_resolv.o : - herror.c - mtctxres.c - res_comp.c - res_data.c - res_debug.c - res_findzonecut.c - res_init.c - res_mkquery.c - res_mkupdate.c - res_query.c - res_send.c - res_sendsigned.c - res_update.c -; - -MergeObject libbind_private.o : - # private functions - strsep.c -; diff --git a/src/kits/package/Jamfile b/src/kits/package/Jamfile index f848a4a235..7f84897fe9 100644 --- a/src/kits/package/Jamfile +++ b/src/kits/package/Jamfile @@ -1,17 +1,11 @@ SubDir HAIKU_TOP src kits package ; -UseBuildFeatureHeaders zlib ; - UsePrivateHeaders kernel shared storage ; -SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg ] ; -SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg v1 ] ; -SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package solver ] ; - HPKG_SOURCES = AttributeDataReader.cpp BlockBufferPool.cpp @@ -66,62 +60,74 @@ HPKG_SOURCES = ZlibDecompressor.cpp ; -Includes [ FGristFiles $(HPKG_SOURCES) ] - : [ BuildFeatureAttribute zlib : headers ] ; +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + UseBuildFeatureHeaders zlib ; -SharedLibrary libpackage.so - : - ActivateRepositoryCacheJob.cpp - ActivateRepositoryConfigJob.cpp - ActivationTransaction.cpp - AddRepositoryRequest.cpp - Attributes.cpp - ChecksumAccessors.cpp - Context.cpp - DaemonClient.cpp - DownloadFileRequest.cpp - DropRepositoryRequest.cpp - FetchFileJob.cpp - InstallationLocationInfo.cpp - Job.cpp - JobQueue.cpp - PackageInfo.cpp - PackageInfoContentHandler.cpp - PackageInfoParser.cpp - PackageInfoSet.cpp - PackageResolvable.cpp - PackageResolvableExpression.cpp - PackageRoster.cpp - PackageVersion.cpp - RefreshRepositoryRequest.cpp - RemoveRepositoryJob.cpp - RepositoryCache.cpp - RepositoryConfig.cpp - RepositoryInfo.cpp - Request.cpp - TempfileManager.cpp - User.cpp - ValidateChecksumJob.cpp + SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg ] ; + SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package hpkg v1 ] ; + SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src kits package solver ] ; - $(HPKG_SOURCES) + Includes [ FGristFiles $(HPKG_SOURCES) ] + : [ BuildFeatureAttribute zlib : headers ] ; - # hpkg, but only libpackage - NoErrorOutput.cpp - StandardErrorOutput.cpp + SharedLibrary [ MultiArchDefaultGristFiles libpackage.so ] + : + ActivateRepositoryCacheJob.cpp + ActivateRepositoryConfigJob.cpp + ActivationTransaction.cpp + AddRepositoryRequest.cpp + Attributes.cpp + ChecksumAccessors.cpp + Context.cpp + DaemonClient.cpp + DownloadFileRequest.cpp + DropRepositoryRequest.cpp + FetchFileJob.cpp + InstallationLocationInfo.cpp + Job.cpp + JobQueue.cpp + PackageInfo.cpp + PackageInfoContentHandler.cpp + PackageInfoParser.cpp + PackageInfoSet.cpp + PackageResolvable.cpp + PackageResolvableExpression.cpp + PackageRoster.cpp + PackageVersion.cpp + RefreshRepositoryRequest.cpp + RemoveRepositoryJob.cpp + RepositoryCache.cpp + RepositoryConfig.cpp + RepositoryInfo.cpp + Request.cpp + TempfileManager.cpp + User.cpp + ValidateChecksumJob.cpp - # solver - Solver.cpp - SolverPackage.cpp - SolverPackageSpecifier.cpp - SolverPackageSpecifierList.cpp - SolverProblem.cpp - SolverProblemSolution.cpp - SolverRepository.cpp - SolverResult.cpp - : - libshared.a be - [ BuildFeatureAttribute zlib : library ] - $(TARGET_LIBSTDC++) -; + $(HPKG_SOURCES) + + # hpkg, but only libpackage + NoErrorOutput.cpp + StandardErrorOutput.cpp + + # solver + Solver.cpp + SolverPackage.cpp + SolverPackageSpecifier.cpp + SolverPackageSpecifierList.cpp + SolverProblem.cpp + SolverProblemSolution.cpp + SolverRepository.cpp + SolverResult.cpp + : + [ MultiArchDefaultGristFiles libshared.a ] + be + [ BuildFeatureAttribute zlib : library ] + $(TARGET_LIBSTDC++) + ; + } +} HaikuSubInclude solver ; diff --git a/src/kits/shared/Jamfile b/src/kits/shared/Jamfile index d1df6524ce..4a89a97c40 100644 --- a/src/kits/shared/Jamfile +++ b/src/kits/shared/Jamfile @@ -5,43 +5,56 @@ AddSubDirSupportedPlatforms libbe_test ; UseLibraryHeaders agg ; UsePrivateHeaders shared locale ; -UseHeaders [ FDirName $(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCH)) - servers input ] ; -UseHeaders [ FDirName $(HAIKU_TOP) src kits ] ; -# for RWLockManager only -UsePrivateSystemHeaders ; -UsePrivateHeaders kernel libroot ; +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + local architecture = $(TARGET_PACKAGING_ARCH) ; -StaticLibrary libshared.a : - AboutMenuItem.cpp - AboutWindow.cpp - ArgumentVector.cpp - CalendarView.cpp - ColorQuantizer.cpp - CommandPipe.cpp - DragTrackingFilter.cpp - HashString.cpp - IconButton.cpp - IconView.cpp - Keymap.cpp - LongAndDragTrackingFilter.cpp - NaturalCompare.cpp - PromptWindow.cpp - QueryFile.cpp - RegExp.cpp - RWLockManager.cpp - SHA256.cpp - ShakeTrackingFilter.cpp - StringForRate.cpp - StringForSize.cpp - Variant.cpp -; + UseHeaders [ FDirName + $(TARGET_COMMON_DEBUG_OBJECT_DIR_$(TARGET_PACKAGING_ARCHS[1])) + servers input ] ; + # For the generated SystemKeymap.h. We're fine with the one for the + # primary architecture. + UseHeaders [ FDirName $(HAIKU_TOP) src kits ] ; + + # for RWLockManager only + UsePrivateSystemHeaders ; + UsePrivateHeaders kernel libroot ; + + StaticLibrary [ MultiArchDefaultGristFiles libshared.a ] : + AboutMenuItem.cpp + AboutWindow.cpp + ArgumentVector.cpp + CalendarView.cpp + ColorQuantizer.cpp + CommandPipe.cpp + DragTrackingFilter.cpp + HashString.cpp + IconButton.cpp + IconView.cpp + Keymap.cpp + LongAndDragTrackingFilter.cpp + NaturalCompare.cpp + PromptWindow.cpp + QueryFile.cpp + RegExp.cpp + RWLockManager.cpp + SHA256.cpp + ShakeTrackingFilter.cpp + StringForRate.cpp + StringForSize.cpp + Variant.cpp + ; + + Includes [ FGristFiles Keymap.cpp ] + : SystemKeymap.h ; + } +} -Includes [ FGristFiles Keymap.cpp ] : SystemKeymap.h ; UseLibraryHeaders mapm ; StaticLibrary libexpression_parser.a : ExpressionParser.cpp -; + ; diff --git a/src/libs/agg/Jamfile b/src/libs/agg/Jamfile index c59a0a23fe..f5c237c2a7 100644 --- a/src/libs/agg/Jamfile +++ b/src/libs/agg/Jamfile @@ -8,34 +8,38 @@ UseLibraryHeaders agg ; SubDirCcFlags -w ; SubDirC++Flags -w ; -SEARCH_SOURCE += [ FDirName $(SUBDIR) src ] ; - -StaticLibrary libagg.a : - # src - agg_arc.cpp - agg_arrowhead.cpp - agg_bezier_arc.cpp - agg_bspline.cpp - agg_curves.cpp - agg_embedded_raster_fonts.cpp - agg_gsv_text.cpp - agg_image_filters.cpp - agg_line_aa_basics.cpp - agg_line_profile_aa.cpp - agg_rounded_rect.cpp - agg_sqrt_tables.cpp - agg_trans_affine.cpp - agg_trans_double_path.cpp - agg_trans_single_path.cpp - agg_trans_warp_magnifier.cpp - agg_vcgen_bspline.cpp - agg_vcgen_contour.cpp - agg_vcgen_dash.cpp - agg_vcgen_markers_term.cpp - agg_vcgen_smooth_poly1.cpp - agg_vcgen_stroke.cpp - agg_vpgen_clip_polygon.cpp - agg_vpgen_clip_polyline.cpp - agg_vpgen_segmentator.cpp -; +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + SEARCH_SOURCE += [ FDirName $(SUBDIR) src ] ; + StaticLibrary [ MultiArchDefaultGristFiles libagg.a ] : + # src + agg_arc.cpp + agg_arrowhead.cpp + agg_bezier_arc.cpp + agg_bspline.cpp + agg_curves.cpp + agg_embedded_raster_fonts.cpp + agg_gsv_text.cpp + agg_image_filters.cpp + agg_line_aa_basics.cpp + agg_line_profile_aa.cpp + agg_rounded_rect.cpp + agg_sqrt_tables.cpp + agg_trans_affine.cpp + agg_trans_double_path.cpp + agg_trans_single_path.cpp + agg_trans_warp_magnifier.cpp + agg_vcgen_bspline.cpp + agg_vcgen_contour.cpp + agg_vcgen_dash.cpp + agg_vcgen_markers_term.cpp + agg_vcgen_smooth_poly1.cpp + agg_vcgen_stroke.cpp + agg_vpgen_clip_polygon.cpp + agg_vpgen_clip_polyline.cpp + agg_vpgen_segmentator.cpp + ; + } +} diff --git a/src/libs/icon/Jamfile b/src/libs/icon/Jamfile index 47d7ce0b6e..7ed6d6e119 100644 --- a/src/libs/icon/Jamfile +++ b/src/libs/icon/Jamfile @@ -13,52 +13,57 @@ local sourceDirs = transformer ; -local sourceDir ; -for sourceDir in $(sourceDirs) { - SEARCH_SOURCE += [ FDirName $(HAIKU_TOP) src libs icon $(sourceDir) ] ; -} - # system headers UseLibraryHeaders agg icon ; UsePrivateHeaders shared ; -StaticLibrary libicon.a : - # flat_icon - FlatIconFormat.cpp - FlatIconImporter.cpp - LittleEndianBuffer.cpp - PathCommandQueue.cpp +local architectureObject ; +for architectureObject in [ MultiArchSubDirSetup ] { + on $(architectureObject) { + local sourceDir ; + for sourceDir in $(sourceDirs) { + SEARCH_SOURCE + += [ FDirName $(HAIKU_TOP) src libs icon $(sourceDir) ] ; + } - # message - Defines.cpp - MessageImporter.cpp + StaticLibrary [ MultiArchDefaultGristFiles libicon.a ] : + # flat_icon + FlatIconFormat.cpp + FlatIconImporter.cpp + LittleEndianBuffer.cpp + PathCommandQueue.cpp - # shape - PathContainer.cpp - Shape.cpp - ShapeContainer.cpp - VectorPath.cpp + # message + Defines.cpp + MessageImporter.cpp - # style - GradientTransformable.cpp - Style.cpp - StyleContainer.cpp + # shape + PathContainer.cpp + Shape.cpp + ShapeContainer.cpp + VectorPath.cpp - # transformable - Transformable.cpp + # style + GradientTransformable.cpp + Style.cpp + StyleContainer.cpp - # transformer - AffineTransformer.cpp - ContourTransformer.cpp - PathSource.cpp - PerspectiveTransformer.cpp - StrokeTransformer.cpp - Transformer.cpp - TransformerFactory.cpp + # transformable + Transformable.cpp - Icon.cpp - IconRenderer.cpp - IconUtils.cpp -; + # transformer + AffineTransformer.cpp + ContourTransformer.cpp + PathSource.cpp + PerspectiveTransformer.cpp + StrokeTransformer.cpp + Transformer.cpp + TransformerFactory.cpp + Icon.cpp + IconRenderer.cpp + IconUtils.cpp + ; + } +}