OXYGENHUB
◆ main openmsx / build / 3rdparty_libraries.py
995 B · Python · last changed chore(): initial commit 1 month ago source blame history raw
1
# Prints which 3rd party libraries are desired for the given configuration.
2
3
from components import requiredLibrariesFor
4
from configurations import getConfiguration
5
from libraries import allDependencies, librariesByName
6
from packages import iterDownloadablePackages
7
8
def main(platform, linkMode):
9
	configuration = getConfiguration(linkMode)
10
	components = configuration.iterDesiredComponents()
11
12
	# Compute the set of all directly and indirectly required libraries,
13
	# then filter out system libraries.
14
	thirdPartyLibs = set(
15
		makeName
16
		for makeName in allDependencies(requiredLibrariesFor(components))
17
		if not librariesByName[makeName].isSystemLibrary(platform)
18
		)
19
20
	print(' '.join(sorted(thirdPartyLibs)))
21
22
if __name__ == '__main__':
23
	import sys
24
	if len(sys.argv) == 3:
25
		try:
26
			main(*sys.argv[1 : ])
27
		except ValueError as ex:
28
			print(ex, file=sys.stderr)
29
			sys.exit(2)
30
	else:
31
		print(
32
			'Usage: python3 3rdparty_libraries.py TARGET_OS LINK_MODE',
33
			file=sys.stderr
34
			)
35
		sys.exit(2)