blob: 63102c107edcca965e46ba36a8ecd38d39f96096 [file] [log] [blame]
Chia-I Wu60558b12010-05-31 12:37:23 +08001#######################################################################
2# SConscript for vgapi
3
4from sys import executable as python_cmd
5
6Import('*')
7
José Fonseca10b07662011-11-09 07:05:52 +00008env = env.Clone()
Chia-I Wu60558b12010-05-31 12:37:23 +08009
José Fonseca71c87e42013-01-21 17:47:51 +000010vgapi_header, = env.CodeGenerate(
11 target = 'vgapi_tmp.h',
Matt Turnerd5e94262013-01-21 10:27:25 -080012 script = '../mapi_abi.py',
José Fonseca10b07662011-11-09 07:05:52 +000013 source = 'vgapi.csv',
14 command = python_cmd + ' $SCRIPT --printer vgapi --mode lib $SOURCE > $TARGET'
15)
Chia-I Wu60558b12010-05-31 12:37:23 +080016
José Fonseca10b07662011-11-09 07:05:52 +000017env.Append(CPPDEFINES = [
18 'MAPI_ABI_HEADER=\\"vgapi/vgapi_tmp.h\\"',
19 'MAPI_DLL_EXPORTS',
20 'KHRONOS_DLL_EXPORTS',
21])
Chia-I Wu60558b12010-05-31 12:37:23 +080022
José Fonseca10b07662011-11-09 07:05:52 +000023env.Append(CPPPATH = [
24 '#/include',
25 '#/src/mapi',
José Fonseca71c87e42013-01-21 17:47:51 +000026 Dir('..'), # vgapi/vgapi_tmp.h build path
José Fonseca10b07662011-11-09 07:05:52 +000027])
Chia-I Wu60558b12010-05-31 12:37:23 +080028
José Fonseca10b07662011-11-09 07:05:52 +000029mapi_sources = [
30 'entry.c',
31 'mapi.c',
32 'stub.c',
33 'table.c',
34 'u_current.c',
35 'u_execmem.c',
José Fonseca10b07662011-11-09 07:05:52 +000036]
Chia-I Wu60558b12010-05-31 12:37:23 +080037
José Fonseca10b07662011-11-09 07:05:52 +000038vgapi_objects = []
39for s in mapi_sources:
Matt Turnerd5e94262013-01-21 10:27:25 -080040 o = env.SharedObject(s[:-2], '../' + s)
José Fonseca10b07662011-11-09 07:05:52 +000041 vgapi_objects.append(o)
Chia-I Wu60558b12010-05-31 12:37:23 +080042
José Fonseca10b07662011-11-09 07:05:52 +000043env.Depends(vgapi_objects, vgapi_header)
Chia-I Wu60558b12010-05-31 12:37:23 +080044
José Fonseca10b07662011-11-09 07:05:52 +000045# libOpenVG.dll
46env['LIBPREFIX'] = 'lib'
47env['SHLIBPREFIX'] = 'lib'
Chia-I Wu60558b12010-05-31 12:37:23 +080048
José Fonseca10b07662011-11-09 07:05:52 +000049openvg = env.SharedLibrary(
50 target = 'OpenVG',
51 source = vgapi_objects,
52)
José Fonseca63528c42011-01-13 11:54:43 +000053
José Fonseca10b07662011-11-09 07:05:52 +000054env.InstallSharedLibrary(openvg, version=(1, 0, 0))
Chia-I Wu60558b12010-05-31 12:37:23 +080055
José Fonseca10b07662011-11-09 07:05:52 +000056if env['platform'] == 'windows':
57 openvg = env.FindIxes(openvg, 'LIBPREFIX', 'LIBSUFFIX')
58else:
59 openvg = env.FindIxes(openvg, 'SHLIBPREFIX', 'SHLIBSUFFIX')
Chia-I Wu60558b12010-05-31 12:37:23 +080060
José Fonseca10b07662011-11-09 07:05:52 +000061Export(['openvg'])