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