[Bf-blender-cvs] [4452bea2f1] blender2.8: move Gawain library to intern

Mike Erwin noreply at git.blender.org
Fri Mar 17 04:58:58 CET 2017


Commit: 4452bea2f170ec7fe48c223c8c499f1eb9b5356c
Author: Mike Erwin
Date:   Thu Mar 16 23:32:35 2017 -0400
Branches: blender2.8
https://developer.blender.org/rB4452bea2f170ec7fe48c223c8c499f1eb9b5356c

move Gawain library to intern

Before now it lived in source/blender/gpu for convenience. Only a few files in the gpu module use Gawain directly.

Tested on Mac, time to push and test on Windows.

Todo: some CMake magic to make it easy to
#include "gawain/some_header.h"
from any C or H file. Main problem here is the many editors that include GPU_immediate.h which includes Gawain's immediate.h -- is there a way to avoid changing every editor's CMakeLists?

===================================================================

M	build_files/cmake/macros.cmake
M	intern/CMakeLists.txt
A	intern/gawain/CMakeLists.txt
R100	source/blender/gpu/gawain/attrib_binding.h	intern/gawain/gawain/attrib_binding.h
R100	source/blender/gpu/gawain/batch.h	intern/gawain/gawain/batch.h
R100	source/blender/gpu/gawain/buffer_id.h	intern/gawain/gawain/buffer_id.h
R100	source/blender/gpu/gawain/common.h	intern/gawain/gawain/common.h
R100	source/blender/gpu/gawain/element.h	intern/gawain/gawain/element.h
R100	source/blender/gpu/gawain/imm_util.h	intern/gawain/gawain/imm_util.h
R100	source/blender/gpu/gawain/immediate.h	intern/gawain/gawain/immediate.h
R100	source/blender/gpu/gawain/primitive.h	intern/gawain/gawain/primitive.h
R100	source/blender/gpu/gawain/shader_interface.h	intern/gawain/gawain/shader_interface.h
R100	source/blender/gpu/gawain/vertex_buffer.h	intern/gawain/gawain/vertex_buffer.h
R100	source/blender/gpu/gawain/vertex_format.h	intern/gawain/gawain/vertex_format.h
R100	source/blender/gpu/gawain/attrib_binding.c	intern/gawain/src/attrib_binding.c
R100	source/blender/gpu/gawain/batch.c	intern/gawain/src/batch.c
R100	source/blender/gpu/gawain/buffer_id.cpp	intern/gawain/src/buffer_id.cpp
R100	source/blender/gpu/gawain/element.c	intern/gawain/src/element.c
R100	source/blender/gpu/gawain/imm_util.c	intern/gawain/src/imm_util.c
R100	source/blender/gpu/gawain/immediate.c	intern/gawain/src/immediate.c
R100	source/blender/gpu/gawain/primitive.c	intern/gawain/src/primitive.c
R100	source/blender/gpu/gawain/shader_interface.c	intern/gawain/src/shader_interface.c
R100	source/blender/gpu/gawain/vertex_buffer.c	intern/gawain/src/vertex_buffer.c
R100	source/blender/gpu/gawain/vertex_format.c	intern/gawain/src/vertex_format.c
M	source/blender/gpu/CMakeLists.txt
M	source/blender/gpu/GPU_batch.h
M	source/blender/gpu/GPU_immediate.h

===================================================================

diff --git a/build_files/cmake/macros.cmake b/build_files/cmake/macros.cmake
index 43c341c79c..7b47578cbc 100644
--- a/build_files/cmake/macros.cmake
+++ b/build_files/cmake/macros.cmake
@@ -598,6 +598,7 @@ function(SETUP_BLENDER_SORTED_LIBS)
 		bf_bmesh
 		bf_gpu
 		bf_draw
+		bf_intern_gawain
 		bf_blenloader
 		bf_blenkernel
 		bf_physics
diff --git a/intern/CMakeLists.txt b/intern/CMakeLists.txt
index bfe230250a..af3b929607 100644
--- a/intern/CMakeLists.txt
+++ b/intern/CMakeLists.txt
@@ -33,6 +33,7 @@ add_subdirectory(opencolorio)
 add_subdirectory(mikktspace)
 add_subdirectory(glew-mx)
 add_subdirectory(eigen)
+add_subdirectory(gawain)
 
 if(WITH_GAMEENGINE_DECKLINK)
 	add_subdirectory(decklink)
diff --git a/intern/gawain/CMakeLists.txt b/intern/gawain/CMakeLists.txt
new file mode 100644
index 0000000000..99adab851c
--- /dev/null
+++ b/intern/gawain/CMakeLists.txt
@@ -0,0 +1,34 @@
+
+set(INC gawain)
+
+set(INC_SYS ${GLEW_INCLUDE_PATH})
+
+set(SRC
+	src/attrib_binding.c
+	src/batch.c
+	src/element.c
+	src/buffer_id.cpp
+	src/immediate.c
+	src/imm_util.c
+	src/primitive.c
+	src/shader_interface.c
+	src/vertex_buffer.c
+	src/vertex_format.c
+
+	gawain/attrib_binding.h
+	gawain/batch.h
+	gawain/buffer_id.h
+	gawain/common.h
+	gawain/element.h
+	gawain/immediate.h
+	gawain/imm_util.h
+	gawain/primitive.h
+	gawain/shader_interface.h
+	gawain/vertex_buffer.h
+	gawain/vertex_format.h
+)
+
+# remove this when we switch to core profile
+add_definitions(-DWITH_GL_PROFILE_COMPAT)
+
+blender_add_lib(bf_intern_gawain "${SRC}" "${INC}" "${INC_SYS}")
diff --git a/source/blender/gpu/gawain/attrib_binding.h b/intern/gawain/gawain/attrib_binding.h
similarity index 100%
rename from source/blender/gpu/gawain/attrib_binding.h
rename to intern/gawain/gawain/attrib_binding.h
diff --git a/source/blender/gpu/gawain/batch.h b/intern/gawain/gawain/batch.h
similarity index 100%
rename from source/blender/gpu/gawain/batch.h
rename to intern/gawain/gawain/batch.h
diff --git a/source/blender/gpu/gawain/buffer_id.h b/intern/gawain/gawain/buffer_id.h
similarity index 100%
rename from source/blender/gpu/gawain/buffer_id.h
rename to intern/gawain/gawain/buffer_id.h
diff --git a/source/blender/gpu/gawain/common.h b/intern/gawain/gawain/common.h
similarity index 100%
rename from source/blender/gpu/gawain/common.h
rename to intern/gawain/gawain/common.h
diff --git a/source/blender/gpu/gawain/element.h b/intern/gawain/gawain/element.h
similarity index 100%
rename from source/blender/gpu/gawain/element.h
rename to intern/gawain/gawain/element.h
diff --git a/source/blender/gpu/gawain/imm_util.h b/intern/gawain/gawain/imm_util.h
similarity index 100%
rename from source/blender/gpu/gawain/imm_util.h
rename to intern/gawain/gawain/imm_util.h
diff --git a/source/blender/gpu/gawain/immediate.h b/intern/gawain/gawain/immediate.h
similarity index 100%
rename from source/blender/gpu/gawain/immediate.h
rename to intern/gawain/gawain/immediate.h
diff --git a/source/blender/gpu/gawain/primitive.h b/intern/gawain/gawain/primitive.h
similarity index 100%
rename from source/blender/gpu/gawain/primitive.h
rename to intern/gawain/gawain/primitive.h
diff --git a/source/blender/gpu/gawain/shader_interface.h b/intern/gawain/gawain/shader_interface.h
similarity index 100%
rename from source/blender/gpu/gawain/shader_interface.h
rename to intern/gawain/gawain/shader_interface.h
diff --git a/source/blender/gpu/gawain/vertex_buffer.h b/intern/gawain/gawain/vertex_buffer.h
similarity index 100%
rename from source/blender/gpu/gawain/vertex_buffer.h
rename to intern/gawain/gawain/vertex_buffer.h
diff --git a/source/blender/gpu/gawain/vertex_format.h b/intern/gawain/gawain/vertex_format.h
similarity index 100%
rename from source/blender/gpu/gawain/vertex_format.h
rename to intern/gawain/gawain/vertex_format.h
diff --git a/source/blender/gpu/gawain/attrib_binding.c b/intern/gawain/src/attrib_binding.c
similarity index 100%
rename from source/blender/gpu/gawain/attrib_binding.c
rename to intern/gawain/src/attrib_binding.c
diff --git a/source/blender/gpu/gawain/batch.c b/intern/gawain/src/batch.c
similarity index 100%
rename from source/blender/gpu/gawain/batch.c
rename to intern/gawain/src/batch.c
diff --git a/source/blender/gpu/gawain/buffer_id.cpp b/intern/gawain/src/buffer_id.cpp
similarity index 100%
rename from source/blender/gpu/gawain/buffer_id.cpp
rename to intern/gawain/src/buffer_id.cpp
diff --git a/source/blender/gpu/gawain/element.c b/intern/gawain/src/element.c
similarity index 100%
rename from source/blender/gpu/gawain/element.c
rename to intern/gawain/src/element.c
diff --git a/source/blender/gpu/gawain/imm_util.c b/intern/gawain/src/imm_util.c
similarity index 100%
rename from source/blender/gpu/gawain/imm_util.c
rename to intern/gawain/src/imm_util.c
diff --git a/source/blender/gpu/gawain/immediate.c b/intern/gawain/src/immediate.c
similarity index 100%
rename from source/blender/gpu/gawain/immediate.c
rename to intern/gawain/src/immediate.c
diff --git a/source/blender/gpu/gawain/primitive.c b/intern/gawain/src/primitive.c
similarity index 100%
rename from source/blender/gpu/gawain/primitive.c
rename to intern/gawain/src/primitive.c
diff --git a/source/blender/gpu/gawain/shader_interface.c b/intern/gawain/src/shader_interface.c
similarity index 100%
rename from source/blender/gpu/gawain/shader_interface.c
rename to intern/gawain/src/shader_interface.c
diff --git a/source/blender/gpu/gawain/vertex_buffer.c b/intern/gawain/src/vertex_buffer.c
similarity index 100%
rename from source/blender/gpu/gawain/vertex_buffer.c
rename to intern/gawain/src/vertex_buffer.c
diff --git a/source/blender/gpu/gawain/vertex_format.c b/intern/gawain/src/vertex_format.c
similarity index 100%
rename from source/blender/gpu/gawain/vertex_format.c
rename to intern/gawain/src/vertex_format.c
diff --git a/source/blender/gpu/CMakeLists.txt b/source/blender/gpu/CMakeLists.txt
index 391efdaeb0..1791b34d4c 100644
--- a/source/blender/gpu/CMakeLists.txt
+++ b/source/blender/gpu/CMakeLists.txt
@@ -42,6 +42,7 @@ set(INC
 	../../../intern/glew-mx
 	../../../intern/guardedalloc
 	../../../intern/smoke/extern
+	../../../intern/gawain
 )
 
 set(INC_SYS
@@ -70,28 +71,6 @@ set(SRC
 	intern/gpu_uniformbuffer.c
 	intern/gpu_viewport.c
 
-	gawain/attrib_binding.c
-	gawain/attrib_binding.h
-	gawain/batch.c
-	gawain/batch.h
-	gawain/buffer_id.h
-	gawain/buffer_id.cpp
-	gawain/common.h
-	gawain/element.c
-	gawain/element.h
-	gawain/immediate.c
-	gawain/immediate.h
-	gawain/imm_util.c
-	gawain/imm_util.h
-	gawain/primitive.h
-	gawain/primitive.c
-	gawain/shader_interface.c
-	gawain/shader_interface.h
-	gawain/vertex_buffer.c
-	gawain/vertex_buffer.h
-	gawain/vertex_format.c
-	gawain/vertex_format.h
-
 	shaders/gpu_shader_fx_lib.glsl
 	shaders/gpu_shader_fx_ssao_frag.glsl
 	shaders/gpu_shader_fx_dof_frag.glsl
diff --git a/source/blender/gpu/GPU_batch.h b/source/blender/gpu/GPU_batch.h
index 6d63965952..2232e333bb 100644
--- a/source/blender/gpu/GPU_batch.h
+++ b/source/blender/gpu/GPU_batch.h
@@ -30,7 +30,11 @@
 
 #pragma once
 
-#include "gawain/batch.h"
+#include "../../../intern/gawain/gawain/batch.h"
+
+// TODO: CMake magic to do this:
+// #include "gawain/batch.h"
+
 #include "GPU_shader.h"
 
 /* Extend Batch_set_program to use Blender’s library of built-in shader programs. */
diff --git a/source/blender/gpu/GPU_immediate.h b/source/blender/gpu/GPU_immediate.h
index 4a0840e22c..35964a8103 100644
--- a/source/blender/gpu/GPU_immediate.h
+++ b/source/blender/gpu/GPU_immediate.h
@@ -30,8 +30,13 @@
 
 #pragma once
 
-#include "gawain/immediate.h"
-#include "gawain/imm_util.h"
+#include "../../../intern/gawain/gawain/immediate.h"
+#include "../../../intern/gawain/gawain/imm_util.h"
+
+// TODO: CMake magic to do this:
+// #include "gawain/immediate.h"
+// #include "gawain/imm_util.h"
+
 #include "GPU_shader.h"
 
 /* Extend immBindProgram to use Blender’s library of built-in shader programs.




More information about the Bf-blender-cvs mailing list