xref: /haiku/src/libs/icon/Jamfile (revision 02354704729d38c3b078c696adc1bbbd33cbcf72)
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			Shape.cpp
49			ShapeContainer.cpp
50			VectorPath.cpp
51
52			# style
53			GradientTransformable.cpp
54			Style.cpp
55			StyleContainer.cpp
56
57			# transformable
58			Transformable.cpp
59
60			# transformer
61			AffineTransformer.cpp
62			ContourTransformer.cpp
63			PathSource.cpp
64			PerspectiveTransformer.cpp
65			StrokeTransformer.cpp
66			Transformer.cpp
67			TransformerFactory.cpp
68
69			Icon.cpp
70			IconRenderer.cpp
71			IconUtils.cpp
72			;
73	}
74}
75