xref: /haiku/src/kits/media/Jamfile (revision aa3083e086e5a929c061c72983e09d916c548a38)
1SubDir HAIKU_TOP src kits media ;
2
3SetSubDirSupportedPlatformsBeOSCompatible ;
4
5if $(TARGET_PLATFORM) != haiku {
6	UseHeaders [ FDirName $(HAIKU_TOP) headers os media ] : true ;
7		# We need the public media headers also when not compiling for Haiku.
8}
9
10UsePrivateHeaders app media shared ;
11UsePrivateHeaders [ FDirName media experimental ] ;
12
13if $(CHECK_MALLOC) {
14	SubDirC++Flags -D_NO_INLINE_ASM -fcheck-memory-usage ;
15}
16
17local architectureObject ;
18for architectureObject in [ MultiArchSubDirSetup ] {
19	on $(architectureObject) {
20
21		SEARCH_SOURCE += [ FDirName $(SUBDIR) experimental ] ;
22		SEARCH_SOURCE += [ FDirName $(SUBDIR) legacy ] ;
23
24		SharedLibrary [ MultiArchDefaultGristFiles libmedia.so ] :
25			# Public Media Kit
26			Buffer.cpp
27			BufferConsumer.cpp
28			BufferGroup.cpp
29			BufferProducer.cpp
30			Controllable.cpp
31			FileInterface.cpp
32			MediaAddOn.cpp
33			MediaDecoder.cpp
34			MediaDefs.cpp
35			MediaEncoder.cpp
36			MediaEventLooper.cpp
37			MediaFile.cpp
38			MediaFiles.cpp
39			MediaFormats.cpp
40			MediaNode.cpp
41			MediaRecorder.cpp
42			MediaRoster.cpp
43			MediaTheme.cpp
44			MediaTrack.cpp
45			ParameterWeb.cpp
46			PlaySound.cpp
47			RealtimeAlloc.cpp
48			Sound.cpp
49			SoundFile.cpp
50			SoundPlayer.cpp
51			TimeCode.cpp
52			TimedEventQueue.cpp
53			TimeSource.cpp
54
55			# Experimental Media Kit
56			AdapterIO.cpp
57			MediaClient.cpp
58			MediaClientDefs.cpp
59			MediaClientNode.cpp
60			MediaConnection.cpp
61			MediaIO.cpp
62			SimpleMediaClient.cpp
63
64			# Internal Functionality
65			AddOnManager.cpp
66			BufferCache.cpp
67			DataExchange.cpp
68			DefaultMediaTheme.cpp
69			DormantNodeManager.cpp
70			FormatManager.cpp
71			MediaRecorderNode.cpp
72			Notifications.cpp
73			request_data.cpp
74			SharedBufferList.cpp
75			TrackReader.cpp
76			TimedEventQueuePrivate.cpp
77			TimeSourceObject.cpp
78			TimeSourceObjectManager.cpp
79			SoundPlayNode.cpp
80
81			# Old (R3) Media Kit (built only for GCC2)
82			OldAudioModule.cpp
83			OldAudioStream.cpp
84			OldBufferStream.cpp
85			OldBufferStreamManager.cpp
86			OldMediaModule.cpp
87			OldSubscriber.cpp
88
89			# Codec Plugin API
90			ChunkCache.cpp
91			DecoderPlugin.cpp
92			EncoderPlugin.cpp
93			MediaExtractor.cpp
94			MediaPlugin.cpp
95			MediaWriter.cpp
96			PluginManager.cpp
97			ReaderPlugin.cpp
98			StreamerPlugin.cpp
99			WriterPlugin.cpp
100
101			# Compat Media Kit
102			!missing_symbols.cpp
103			Deprecated.cpp
104			:
105			be localestub shared
106			[ TargetLibsupc++ ] [ TargetLibstdc++ ]
107			;
108	}
109}
110