xref: /haiku/src/libs/icon/Jamfile (revision 445d4fd926c569e7b9ae28017da86280aaecbae2)
1SubDir HAIKU_TOP src libs icon ;
2
3AddSubDirSupportedPlatforms libbe_test ;
4
5# source directories
6local sourceDirs =
7	flat_icon
8	message
9	shape
10	style
11	transformable
12	transformer
13;
14
15# system headers
16UseLibraryHeaders agg icon ;
17
18UsePrivateHeaders shared ;
19
20local architectureObject ;
21for architectureObject in [ MultiArchSubDirSetup ] {
22	on $(architectureObject) {
23		local architecture = $(TARGET_PACKAGING_ARCH) ;
24
25		local sourceDir ;
26		for sourceDir in $(sourceDirs) {
27			SEARCH_SOURCE
28				+= [ FDirName $(HAIKU_TOP) src libs icon $(sourceDir) ] ;
29		}
30
31		# Too many applications depend on libicon APIs being visible in libbe;
32		# so for now, prevent -fvisiblity=hidden from being set.
33		NO_HIDDEN_VISIBILITY on [ MultiArchDefaultGristFiles libicon.a ] = 1 ;
34
35		StaticLibrary [ MultiArchDefaultGristFiles libicon.a ] :
36			# flat_icon
37			FlatIconFormat.cpp
38			FlatIconImporter.cpp
39			LittleEndianBuffer.cpp
40			PathCommandQueue.cpp
41
42			# message
43			Defines.cpp
44			MessageImporter.cpp
45
46			# shape
47			PathContainer.cpp
48			PathSourceShape.cpp
49			ReferenceImage.cpp
50			Shape.cpp
51			ShapeContainer.cpp
52			VectorPath.cpp
53
54			# style
55			GradientTransformable.cpp
56			Style.cpp
57			StyleContainer.cpp
58
59			# transformable
60			Transformable.cpp
61
62			# transformer
63			AffineTransformer.cpp
64			ContourTransformer.cpp
65			PathSource.cpp
66			PerspectiveTransformer.cpp
67			StrokeTransformer.cpp
68			Transformer.cpp
69			TransformerFactory.cpp
70
71			Icon.cpp
72			IconRenderer.cpp
73			IconUtils.cpp
74			;
75	}
76}
77