summaryrefslogtreecommitdiffstats
blob: ea451490d4afb0c97d46a14b3b948046281b33f8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
Import("swiften_env")

myenv = swiften_env.Clone()

sourceList = [
			"ProxiedConnection.cpp",
			"HTTPConnectProxiedConnection.cpp",
			"HTTPConnectProxiedConnectionFactory.cpp",
			"SOCKS5ProxiedConnection.cpp",
			"SOCKS5ProxiedConnectionFactory.cpp",
			"BoostConnection.cpp",
			"BoostConnectionFactory.cpp",
			"BoostConnectionServer.cpp",
			"BoostConnectionServerFactory.cpp",
			"BoostIOServiceThread.cpp",
			"BOSHConnection.cpp",
			"BOSHConnectionPool.cpp",
			"CachingNameOnlyDomainNameResolver.cpp",
			"ConnectionFactory.cpp",
			"ConnectionServer.cpp",
			"ConnectionServerFactory.cpp",
			"DummyConnection.cpp",
			"FakeConnection.cpp",
 			"ChainedConnector.cpp",
 			"Connector.cpp",
 			"Connection.cpp",
			"TimerFactory.cpp",
			"DummyTimerFactory.cpp",
			"BoostTimerFactory.cpp",
			"DomainNameResolver.cpp",
			"DomainNameAddressQuery.cpp",
			"DomainNameServiceQuery.cpp",
			"PlatformDomainNameResolver.cpp",
			"PlatformDomainNameServiceQuery.cpp",
			"PlatformDomainNameAddressQuery.cpp",
			"StaticDomainNameResolver.cpp",
			"HostAddress.cpp",
			"HostAddressPort.cpp",
			"HostNameOrAddress.cpp",
			"NetworkFactories.cpp",
			"BoostNetworkFactories.cpp",
			"NetworkEnvironment.cpp",
			"Timer.cpp",
			"TLSConnection.cpp",
			"TLSConnectionFactory.cpp",
			"BoostTimer.cpp",
			"ProxyProvider.cpp",
			"NullProxyProvider.cpp",
			"NATTraverser.cpp",
			"NullNATTraverser.cpp",
			"NATTraversalGetPublicIPRequest.cpp",
			"NATTraversalForwardPortRequest.cpp",
			"NATTraversalRemovePortForwardingRequest.cpp",
			"NATTraversalInterface.cpp",
	]
		
if myenv["PLATFORM"] == "darwin" :
	myenv.Append(FRAMEWORKS = ["CoreServices", "SystemConfiguration"])
	sourceList += [ "MacOSXProxyProvider.cpp" ]
	sourceList += [ "UnixNetworkEnvironment.cpp" ]
elif myenv["PLATFORM"] == "win32" :
	sourceList += [ "WindowsProxyProvider.cpp" ]
	sourceList += [ "WindowsNetworkEnvironment.cpp" ]
else :
	sourceList += [ "UnixNetworkEnvironment.cpp" ]
	sourceList += [ "UnixProxyProvider.cpp" ]
	sourceList += [ "EnvironmentProxyProvider.cpp" ]
	if myenv.get("HAVE_GCONF", 0) :
		myenv.Append(CPPDEFINES = "HAVE_GCONF")
		myenv.MergeFlags(myenv["GCONF_FLAGS"])
		sourceList += [ "GConfProxyProvider.cpp" ]

objects = myenv.SwiftenObject(sourceList)

if myenv["experimental"] :
	# LibNATPMP classes
	natpmp_env = myenv.Clone()
	natpmp_env.Append(CPPDEFINES = natpmp_env["LIBNATPMP_FLAGS"].get("INTERNAL_CPPDEFINES", []))
	objects += natpmp_env.SwiftenObject([
				"NATPMPInterface.cpp",
			])

	# LibMINIUPnP classes
	upnp_env = myenv.Clone()
	upnp_env.Append(CPPDEFINES = upnp_env["LIBMINIUPNPC_FLAGS"].get("INTERNAL_CPPDEFINES", []))
	objects += upnp_env.SwiftenObject([
				"MiniUPnPInterface.cpp",
			])
	objects += myenv.SwiftenObject([
				"PlatformNATTraversalWorker.cpp",
			])

swiften_env.Append(SWIFTEN_OBJECTS = [objects])