mapi/vgapi: Add SConscript for Windows build.
authorChia-I Wu <olv@lunarg.com>
Mon, 31 May 2010 04:37:23 +0000 (12:37 +0800)
committerChia-I Wu <olv@lunarg.com>
Mon, 31 May 2010 05:27:53 +0000 (13:27 +0800)
src/SConscript
src/mapi/vgapi/SConscript [new file with mode: 0644]

index b8a0024812b506ccd4f95c87256d90ee1f5535ed..9eda35e7c5a0d901c49c711046c91a73479b988d 100644 (file)
@@ -4,6 +4,7 @@ SConscript('glsl/SConscript')
 SConscript('mapi/glapi/SConscript')
 
 if 'egl' in env['statetrackers']:
 SConscript('mapi/glapi/SConscript')
 
 if 'egl' in env['statetrackers']:
+    SConscript('mapi/vgapi/SConscript')
     SConscript('egl/main/SConscript')
 
 if 'mesa' in env['statetrackers']:
     SConscript('egl/main/SConscript')
 
 if 'mesa' in env['statetrackers']:
diff --git a/src/mapi/vgapi/SConscript b/src/mapi/vgapi/SConscript
new file mode 100644 (file)
index 0000000..f000c61
--- /dev/null
@@ -0,0 +1,55 @@
+#######################################################################
+# SConscript for vgapi
+
+from sys import executable as python_cmd
+
+Import('*')
+
+if env['platform'] != 'winddk':
+
+       env = env.Clone()
+
+       vgapi_header = env.CodeGenerate(
+               target = '#src/mapi/vgapi/vgapi_tmp.h',
+               script = '../mapi/mapi_abi.py',
+               source = 'vgapi.csv',
+               command = python_cmd + ' $SCRIPT -i vgapi/vgapi_defines.h $SOURCE > $TARGET'
+       )
+
+       env.Append(CPPDEFINES = [
+               'MAPI_ABI_HEADER=\\"vgapi/vgapi_tmp.h\\"',
+               'KHRONOS_DLL_EXPORTS',
+       ])
+
+       env.Append(CPPPATH = [
+               '#/include',
+               '#/src/mapi',
+       ])
+
+       mapi_sources = [
+               'entry.c',
+               'mapi.c',
+               'stub.c',
+               'table.c',
+               'u_current.c',
+               'u_execmem.c',
+               'u_thread.c',
+       ]
+
+       vgapi_objects = []
+       for s in mapi_sources:
+               o = env.Object(s[:-2], '../mapi/' + s)
+               vgapi_objects.append(o)
+
+       env.Depends(vgapi_objects, vgapi_header)
+
+       openvg = env.SharedLibrary(
+               target = 'libOpenVG',
+               source = vgapi_objects,
+       )
+
+       env.InstallSharedLibrary(openvg, version=(1, 0, 0))
+
+       vgapi = [env.FindIxes(openvg, 'LIBPREFIX', 'LIBSUFFIX')]
+
+       Export(['vgapi', 'vgapi_header'])