mirror of
				https://github.com/ciphervance/supercell-wx.git
				synced 2025-10-31 18:10:05 +00:00 
			
		
		
		
	Add freetype-gl for SDF fonts
This commit is contained in:
		
							parent
							
								
									82b265b6d4
								
							
						
					
					
						commit
						ec8e2643ff
					
				
					 5 changed files with 107 additions and 0 deletions
				
			
		
							
								
								
									
										3
									
								
								.gitmodules
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										3
									
								
								.gitmodules
									
										
									
									
										vendored
									
									
								
							|  | @ -10,3 +10,6 @@ | ||||||
| [submodule "external/hsluv-c"] | [submodule "external/hsluv-c"] | ||||||
| 	path = external/hsluv-c | 	path = external/hsluv-c | ||||||
| 	url = https://github.com/hsluv/hsluv-c.git | 	url = https://github.com/hsluv/hsluv-c.git | ||||||
|  | [submodule "external/freetype-gl"] | ||||||
|  | 	path = external/freetype-gl | ||||||
|  | 	url = https://github.com/rougier/freetype-gl.git | ||||||
|  |  | ||||||
|  | @ -15,6 +15,7 @@ include(${PROJECT_SOURCE_DIR}/external/cmake-conan/conan.cmake) | ||||||
| conan_cmake_configure(REQUIRES boost/1.76.0 | conan_cmake_configure(REQUIRES boost/1.76.0 | ||||||
|                                freetype/2.10.4 |                                freetype/2.10.4 | ||||||
|                                geographiclib/1.52 |                                geographiclib/1.52 | ||||||
|  |                                glew/2.2.0 | ||||||
|                                glm/0.9.9.8 |                                glm/0.9.9.8 | ||||||
|                                gtest/cci.20210126 |                                gtest/cci.20210126 | ||||||
|                                openssl/1.1.1k |                                openssl/1.1.1k | ||||||
|  |  | ||||||
							
								
								
									
										2
									
								
								external/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								external/CMakeLists.txt
									
										
									
									
										vendored
									
									
								
							|  | @ -4,8 +4,10 @@ set(PROJECT_NAME scwx-external) | ||||||
| set_property(DIRECTORY | set_property(DIRECTORY | ||||||
|              APPEND |              APPEND | ||||||
|              PROPERTY CMAKE_CONFIGURE_DEPENDS |              PROPERTY CMAKE_CONFIGURE_DEPENDS | ||||||
|  |              freetype-gl.cmake | ||||||
|              hsluv-c.cmake |              hsluv-c.cmake | ||||||
|              mapbox-gl-native.cmake) |              mapbox-gl-native.cmake) | ||||||
| 
 | 
 | ||||||
|  | include(freetype-gl.cmake) | ||||||
| include(hsluv-c.cmake) | include(hsluv-c.cmake) | ||||||
| include(mapbox-gl-native.cmake) | include(mapbox-gl-native.cmake) | ||||||
|  |  | ||||||
							
								
								
									
										1
									
								
								external/freetype-gl
									
										
									
									
										vendored
									
									
										Submodule
									
								
							
							
						
						
									
										1
									
								
								external/freetype-gl
									
										
									
									
										vendored
									
									
										Submodule
									
								
							|  | @ -0,0 +1 @@ | ||||||
|  | Subproject commit 1cbe5518844db279174b24e6529135870c396744 | ||||||
							
								
								
									
										100
									
								
								external/freetype-gl.cmake
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										100
									
								
								external/freetype-gl.cmake
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,100 @@ | ||||||
|  | cmake_minimum_required(VERSION 3.11) | ||||||
|  | set(PROJECT_NAME scwx-freetype-gl) | ||||||
|  | 
 | ||||||
|  | find_package(OpenGL REQUIRED) | ||||||
|  | find_package(Freetype REQUIRED) | ||||||
|  | find_package(GLEW REQUIRED) | ||||||
|  | 
 | ||||||
|  | set(freetype-gl_WITH_GLEW      ON) | ||||||
|  | set(freetype-gl_WITH_GLAD      OFF) | ||||||
|  | set(freetype-gl_USE_VAO        ON) | ||||||
|  | set(freetype-gl_BUILD_DEMOS    OFF) | ||||||
|  | set(freetype-gl_BUILD_APIDOC   ON) | ||||||
|  | set(freetype-gl_BUILD_HARFBUZZ OFF) | ||||||
|  | set(freetype-gl_BUILD_MAKEFONT ON) | ||||||
|  | set(freetype-gl_BUILD_TESTS    OFF) | ||||||
|  | set(freetype-gl_BUILD_SHARED   OFF) | ||||||
|  | 
 | ||||||
|  | set(FREETYPE_GL_HDR freetype-gl/distance-field.h | ||||||
|  |                     freetype-gl/edtaa3func.h | ||||||
|  |                     freetype-gl/font-manager.h | ||||||
|  |                     freetype-gl/freetype-gl.h | ||||||
|  |                     freetype-gl/markup.h | ||||||
|  |                     freetype-gl/opengl.h | ||||||
|  |                     freetype-gl/platform.h | ||||||
|  |                     freetype-gl/text-buffer.h | ||||||
|  |                     freetype-gl/texture-atlas.h | ||||||
|  |                     freetype-gl/texture-font.h | ||||||
|  |                     freetype-gl/utf8-utils.h | ||||||
|  |                     freetype-gl/ftgl-utils.h | ||||||
|  |                     freetype-gl/vec234.h | ||||||
|  |                     freetype-gl/vector.h | ||||||
|  |                     freetype-gl/vertex-attribute.h | ||||||
|  |                     freetype-gl/vertex-buffer.h | ||||||
|  |                     freetype-gl/freetype-gl-errdef.h) | ||||||
|  | set(FREETYPE_GL_SRC freetype-gl/distance-field.c | ||||||
|  |                     freetype-gl/edtaa3func.c | ||||||
|  |                     freetype-gl/font-manager.c | ||||||
|  |                     freetype-gl/platform.c | ||||||
|  |                     freetype-gl/text-buffer.c | ||||||
|  |                     freetype-gl/texture-atlas.c | ||||||
|  |                     freetype-gl/texture-font.c | ||||||
|  |                     freetype-gl/utf8-utils.c | ||||||
|  |                     freetype-gl/ftgl-utils.c | ||||||
|  |                     freetype-gl/vector.c | ||||||
|  |                     freetype-gl/vertex-attribute.c | ||||||
|  |                     freetype-gl/vertex-buffer.c) | ||||||
|  |                      | ||||||
|  | include(CheckLibraryExists) | ||||||
|  | check_library_exists(m cos "" HAVE_MATH_LIBRARY) | ||||||
|  | 
 | ||||||
|  | if(HAVE_MATH_LIBRARY) | ||||||
|  |     list(APPEND CMAKE_REQUIRED_LIBRARIES m) | ||||||
|  |     set(MATH_LIBRARY m) | ||||||
|  | endif() | ||||||
|  | 
 | ||||||
|  | if(freetype-gl_BUILD_APIDOC) | ||||||
|  |     add_subdirectory(freetype-gl/doc) | ||||||
|  | endif() | ||||||
|  | 
 | ||||||
|  | if(freetype-gl_BUILD_SHARED) | ||||||
|  |     add_library(freetype-gl SHARED ${FREETYPE_GL_SRC} | ||||||
|  |                                    ${FREETYPE_GL_HDR}) | ||||||
|  |     set_target_properties(freetype-gl PROPERTIES VERSION 0.3.2 SOVERSION 0) | ||||||
|  |     target_link_libraries(freetype-gl PRIVATE opengl::opengl | ||||||
|  |                                               Freetype::Freetype | ||||||
|  |                                               ${MATH_LIBRARY} | ||||||
|  |                                               GLEW::GLEW) | ||||||
|  | else() | ||||||
|  |     add_library(freetype-gl STATIC ${FREETYPE_GL_SRC} | ||||||
|  |                                    ${FREETYPE_GL_HDR}) | ||||||
|  |     target_link_libraries(freetype-gl PUBLIC opengl::opengl | ||||||
|  |                                              Freetype::Freetype | ||||||
|  |                                              ${MATH_LIBRARY} | ||||||
|  |                                              GLEW::GLEW) | ||||||
|  | endif() | ||||||
|  | 
 | ||||||
|  | if(freetype-gl_BUILD_MAKEFONT) | ||||||
|  |     add_executable(makefont freetype-gl/makefont.c) | ||||||
|  |     target_link_libraries(makefont freetype-gl | ||||||
|  |                                    GLEW::GLEW) | ||||||
|  | endif() | ||||||
|  | 
 | ||||||
|  | if(freetype-gl_USE_VAO) | ||||||
|  |     target_compile_definitions(freetype-gl PRIVATE FREETYPE_GL_USE_VAO) | ||||||
|  |     target_compile_definitions(makefont    PRIVATE FREETYPE_GL_USE_VAO) | ||||||
|  | endif(freetype-gl_USE_VAO) | ||||||
|  | 
 | ||||||
|  | if(MSVC) | ||||||
|  |     target_compile_definitions(freetype-gl PRIVATE _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_DEPRECATE) | ||||||
|  |     target_compile_definitions(makefont    PRIVATE _CRT_SECURE_NO_WARNINGS _CRT_NONSTDC_NO_DEPRECATE) | ||||||
|  | endif(MSVC) | ||||||
|  | 
 | ||||||
|  | set(FTGL_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR} PARENT_SCOPE) | ||||||
|  | 
 | ||||||
|  | set_target_properties(doc      PROPERTIES EXCLUDE_FROM_ALL True) | ||||||
|  | set_target_properties(makefont PROPERTIES EXCLUDE_FROM_ALL True) | ||||||
|  | 
 | ||||||
|  | set_target_properties(freetype-gl PROPERTIES FOLDER ftgl) | ||||||
|  | set_target_properties(makefont    PROPERTIES FOLDER ftgl) | ||||||
|  | set_target_properties(doc         PROPERTIES FOLDER ftgl) | ||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Dan Paulat
						Dan Paulat