Changeset 278726 in webkit
- Timestamp:
- Jun 10, 2021, 1:17:19 PM (4 years ago)
- Location:
- trunk/Source/ThirdParty/ANGLE
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/ThirdParty/ANGLE/CMakeLists.txt
r278130 r278726 34 34 EGL_EGLEXT_PROTOTYPES 35 35 ) 36 37 # Default library types for ANGLE 38 # Override these in Platform*.cmake for your port as needed. 39 set(ANGLE_LIBRARY_TYPE STATIC) 40 set(GLESv2_LIBRARY_TYPE STATIC) 41 set(EGL_LIBRARY_TYPE STATIC) 36 42 37 43 # ANGLE makes a number of small static libraries that are then joined into a … … 119 125 120 126 if (USE_ANGLE_EGL OR USE_ANGLE_WEBGL) 121 add_library(ANGLE STATIC127 add_library(ANGLE ${ANGLE_LIBRARY_TYPE} 122 128 ${ANGLE_SOURCES} 123 129 ${libangle_sources} … … 138 144 target_compile_definitions(ANGLEFramework INTERFACE ${gl_prototypes}) 139 145 140 add_library(GLESv2 SHARED146 add_library(GLESv2 ${GLESv2_LIBRARY_TYPE} 141 147 ${libglesv2_sources} 142 148 ) … … 147 153 ) 148 154 target_link_libraries(GLESv2 PRIVATE ${ANGLEGLESv2_LIBRARIES}) 155 if (WIN32) 156 # Output library name according to the .def 157 target_sources(GLESv2 PRIVATE src/libGLESv2/libGLESv2_autogen.def) 158 set_target_properties(GLESv2 PROPERTIES OUTPUT_NAME libGLESv2) 159 endif () 149 160 150 161 add_library(GLESv2Framework INTERFACE) 151 162 target_link_libraries(GLESv2Framework INTERFACE GLESv2) 152 163 target_include_directories(GLESv2Framework INTERFACE ${ANGLE_FRAMEWORK_HEADERS_DIR}) 164 target_compile_definitions(GLESv2Framework INTERFACE USE_SYSTEM_EGL) 153 165 add_library(ANGLE::GLES ALIAS GLESv2Framework) 154 166 155 add_library(EGL SHARED 156 ${libegl_sources} 157 ) 158 target_include_directories(EGL PRIVATE ${ANGLE_PRIVATE_INCLUDE_DIRECTORIES}) 159 target_compile_definitions(EGL PRIVATE 160 ${ANGLE_DEFINITIONS} 161 ${gl_prototypes} 162 EGLAPI= 163 ) 164 target_link_libraries(EGL PRIVATE GLESv2) 165 set_target_properties(EGL PROPERTIES LINKER_LANGUAGE CXX) 166 167 add_library(EGLFramework INTERFACE) 168 target_include_directories(EGLFramework INTERFACE ${ANGLE_FRAMEWORK_HEADERS_DIR}/) 169 target_compile_definitions(EGLFramework INTERFACE ${gl_prototypes}) 170 target_link_libraries(EGLFramework INTERFACE EGL) 171 add_library(ANGLE::EGL ALIAS EGLFramework) 172 173 if (WIN32) 174 target_sources(GLESv2 PRIVATE src/libGLESv2/libGLESv2_autogen.def) 175 target_sources(EGL PRIVATE src/libEGL/libEGL.def) 176 177 # Output library names according to the .def 178 set_target_properties(GLESv2 PROPERTIES OUTPUT_NAME libGLESv2) 179 set_target_properties(EGL PROPERTIES OUTPUT_NAME libEGL) 167 if (USE_ANGLE_EGL) 168 add_library(EGL ${EGL_LIBRARY_TYPE} 169 ${libegl_sources} 170 ) 171 target_include_directories(EGL PRIVATE ${ANGLE_PRIVATE_INCLUDE_DIRECTORIES}) 172 target_compile_definitions(EGL PRIVATE 173 ${ANGLE_DEFINITIONS} 174 ${gl_prototypes} 175 EGLAPI= 176 ) 177 target_link_libraries(EGL PRIVATE GLESv2) 178 set_target_properties(EGL PROPERTIES LINKER_LANGUAGE CXX) 179 if (WIN32) 180 # Output library names according to the .def 181 target_sources(EGL PRIVATE src/libEGL/libEGL.def) 182 set_target_properties(EGL PROPERTIES OUTPUT_NAME libEGL) 183 endif () 184 185 add_library(EGLFramework INTERFACE) 186 target_include_directories(EGLFramework INTERFACE ${ANGLE_FRAMEWORK_HEADERS_DIR}/) 187 target_compile_definitions(EGLFramework INTERFACE ${gl_prototypes}) 188 target_link_libraries(EGLFramework INTERFACE EGL) 189 add_library(ANGLE::EGL ALIAS EGLFramework) 180 190 endif () 181 191 else () 182 add_library(ANGLE STATIC${ANGLE_SOURCES})192 add_library(ANGLE ${ANGLE_LIBRARY_TYPE} ${ANGLE_SOURCES}) 183 193 target_include_directories(ANGLE PRIVATE ${ANGLE_PRIVATE_INCLUDE_DIRECTORIES}) 184 194 target_link_libraries(ANGLE PRIVATE ${CMAKE_DL_LIBS}) -
trunk/Source/ThirdParty/ANGLE/ChangeLog
r278362 r278726 1 2021-06-10 Don Olmstead <don.olmstead@sony.com> 2 3 [CMake] Make ANGLE library types configurable 4 https://bugs.webkit.org/show_bug.cgi?id=226840 5 6 Reviewed by Kenneth Russell. 7 8 The type for ANGLE's libraries was being hard coded. Now the libraries can be set by 9 specifying the _LIBRARY_TYPE which defaults to STATIC. Windows platforms override this 10 and use SHARED libraries. 11 12 Additionally make compiling ANGLE's EGL library contingent on USE_ANGLE_EGL being enabled 13 since its not used otherwise. 14 15 * CMakeLists.txt: 16 * PlatformFTW.cmake: 17 * PlatformWin.cmake: 18 1 19 2021-06-02 Kyle Piddington <kpiddington@apple.com> 2 20 -
trunk/Source/ThirdParty/ANGLE/PlatformFTW.cmake
r278130 r278726 30 30 list(APPEND ANGLE_DEFINITIONS ANGLE_ENABLE_D3D9) 31 31 list(APPEND ANGLEGLESv2_LIBRARIES d3d9) 32 33 # Use shared libraries 34 set(GLESv2_LIBRARY_TYPE SHARED) 35 set(EGL_LIBRARY_TYPE SHARED) -
trunk/Source/ThirdParty/ANGLE/PlatformWin.cmake
r278130 r278726 30 30 list(APPEND ANGLE_DEFINITIONS ANGLE_ENABLE_D3D9) 31 31 list(APPEND ANGLEGLESv2_LIBRARIES d3d9) 32 33 # Use shared libraries 34 set(GLESv2_LIBRARY_TYPE SHARED) 35 set(EGL_LIBRARY_TYPE SHARED)
Note:
See TracChangeset
for help on using the changeset viewer.