commit
						78e1abca86
					
				
					 17 changed files with 1892 additions and 0 deletions
				
			
		
							
								
								
									
										156
									
								
								CMake/AbseilHelpers.cmake
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										156
									
								
								CMake/AbseilHelpers.cmake
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,156 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#    http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include(CMakeParseArguments)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# create a library in the absl namespace
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# parameters
 | 
				
			||||||
 | 
					# SOURCES : sources files for the library
 | 
				
			||||||
 | 
					# PUBLIC_LIBRARIES: targets and flags for linking phase
 | 
				
			||||||
 | 
					# PRIVATE_COMPILE_FLAGS: compile flags for the library. Will not be exported.
 | 
				
			||||||
 | 
					# EXPORT_NAME: export name for the absl:: target export
 | 
				
			||||||
 | 
					# TARGET: target name
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# create a target associated to <NAME>
 | 
				
			||||||
 | 
					# libraries are installed under CMAKE_INSTALL_FULL_LIBDIR by default
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					function(absl_library)
 | 
				
			||||||
 | 
					  cmake_parse_arguments(ABSL_LIB
 | 
				
			||||||
 | 
					    "DISABLE_INSTALL" # keep that in case we want to support installation one day
 | 
				
			||||||
 | 
					    "TARGET;EXPORT_NAME"
 | 
				
			||||||
 | 
					    "SOURCES;PUBLIC_LIBRARIES;PRIVATE_COMPILE_FLAGS;PUBLIC_INCLUDE_DIRS;PRIVATE_INCLUDE_DIRS"
 | 
				
			||||||
 | 
					    ${ARGN}
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  set(_NAME ${ABSL_LIB_TARGET})
 | 
				
			||||||
 | 
					  string(TOUPPER ${_NAME} _UPPER_NAME)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  add_library(${_NAME} STATIC ${ABSL_LIB_SOURCES})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  target_compile_options(${_NAME} PRIVATE ${ABSL_COMPILE_CXXFLAGS} ${ABSL_LIB_PRIVATE_COMPILE_FLAGS})
 | 
				
			||||||
 | 
					  target_link_libraries(${_NAME} PUBLIC ${ABSL_LIB_PUBLIC_LIBRARIES})
 | 
				
			||||||
 | 
					  target_include_directories(${_NAME}
 | 
				
			||||||
 | 
					    PUBLIC ${ABSL_COMMON_INCLUDE_DIRS} ${ABSL_LIB_PUBLIC_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					    PRIVATE ${ABSL_LIB_PRIVATE_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if(ABSL_LIB_EXPORT_NAME)
 | 
				
			||||||
 | 
					    add_library(absl::${ABSL_LIB_EXPORT_NAME} ALIAS ${_NAME})
 | 
				
			||||||
 | 
					  endif()
 | 
				
			||||||
 | 
					endfunction()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# header only virtual target creation
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					function(absl_header_library)
 | 
				
			||||||
 | 
					  cmake_parse_arguments(ABSL_HO_LIB
 | 
				
			||||||
 | 
					    "DISABLE_INSTALL"
 | 
				
			||||||
 | 
					    "EXPORT_NAME;TARGET"
 | 
				
			||||||
 | 
					    "PUBLIC_LIBRARIES;PRIVATE_COMPILE_FLAGS;PUBLIC_INCLUDE_DIRS;PRIVATE_INCLUDE_DIRS"
 | 
				
			||||||
 | 
					    ${ARGN}
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  set(_NAME ${ABSL_HO_LIB_TARGET})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  set(__dummy_header_only_lib_file "${CMAKE_CURRENT_BINARY_DIR}/${_NAME}_header_only_dummy.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if(NOT EXISTS ${__dummy_header_only_lib_file})
 | 
				
			||||||
 | 
					    file(WRITE ${__dummy_header_only_lib_file}
 | 
				
			||||||
 | 
					      "\
 | 
				
			||||||
 | 
					       /* generated file for header-only cmake target */ \
 | 
				
			||||||
 | 
					       \
 | 
				
			||||||
 | 
					       // single meaningless symbol \
 | 
				
			||||||
 | 
					       void __${_NAME}__header_fakesym() {} \
 | 
				
			||||||
 | 
					       \
 | 
				
			||||||
 | 
					      "
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					  endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  add_library(${_NAME} ${__dummy_header_only_lib_file})
 | 
				
			||||||
 | 
					  target_link_libraries(${_NAME} PUBLIC ${ABSL_HO_LIB_PUBLIC_LIBRARIES})
 | 
				
			||||||
 | 
					  target_include_directories(${_NAME}
 | 
				
			||||||
 | 
					    PUBLIC ${ABSL_COMMON_INCLUDE_DIRS} ${ABSL_HO_LIB_PUBLIC_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					    PRIVATE ${ABSL_HO_LIB_PRIVATE_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if(ABSL_HO_LIB_EXPORT_NAME)
 | 
				
			||||||
 | 
					    add_library(absl::${ABSL_HO_LIB_EXPORT_NAME} ALIAS ${_NAME})
 | 
				
			||||||
 | 
					  endif()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endfunction()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# create an abseil unit_test and add it to the executed test list
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# parameters
 | 
				
			||||||
 | 
					# TARGET: target name prefix
 | 
				
			||||||
 | 
					# SOURCES: sources files for the tests
 | 
				
			||||||
 | 
					# PUBLIC_LIBRARIES: targets and flags for linking phase.
 | 
				
			||||||
 | 
					# PRIVATE_COMPILE_FLAGS: compile flags for the test. Will not be exported.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# create a target associated to <NAME>_bin
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# all tests will be register for execution with add_test()
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# test compilation and execution is disable when BUILD_TESTING=OFF
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					function(absl_test)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  cmake_parse_arguments(ABSL_TEST
 | 
				
			||||||
 | 
					    ""
 | 
				
			||||||
 | 
					    "TARGET"
 | 
				
			||||||
 | 
					    "SOURCES;PUBLIC_LIBRARIES;PRIVATE_COMPILE_FLAGS;PUBLIC_INCLUDE_DIRS"
 | 
				
			||||||
 | 
					    ${ARGN}
 | 
				
			||||||
 | 
					  )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if(BUILD_TESTING)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    set(_NAME ${ABSL_TEST_TARGET})
 | 
				
			||||||
 | 
					    string(TOUPPER ${_NAME} _UPPER_NAME)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    add_executable(${_NAME}_bin ${ABSL_TEST_SOURCES})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    target_compile_options(${_NAME}_bin PRIVATE ${ABSL_COMPILE_CXXFLAGS} ${ABSL_TEST_PRIVATE_COMPILE_FLAGS})
 | 
				
			||||||
 | 
					    target_link_libraries(${_NAME}_bin PUBLIC ${ABSL_TEST_PUBLIC_LIBRARIES} ${ABSL_TEST_COMMON_LIBRARIES})
 | 
				
			||||||
 | 
					    target_include_directories(${_NAME}_bin
 | 
				
			||||||
 | 
					      PUBLIC ${ABSL_COMMON_INCLUDE_DIRS} ${ABSL_TEST_PUBLIC_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					      PRIVATE ${GMOCK_INCLUDE_DIRS} ${GTEST_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					    )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    add_test(${_NAME}_test ${_NAME}_bin)
 | 
				
			||||||
 | 
					  endif(BUILD_TESTING)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endfunction()
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					function(check_target my_target)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  if(NOT TARGET ${my_target})
 | 
				
			||||||
 | 
					    message(FATAL_ERROR " ABSL: compiling absl requires a ${my_target} CMake target in your project,
 | 
				
			||||||
 | 
					                   see CMake/README.md for more details")
 | 
				
			||||||
 | 
					  endif(NOT TARGET ${my_target})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					endfunction()
 | 
				
			||||||
							
								
								
									
										73
									
								
								CMake/README.md
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										73
									
								
								CMake/README.md
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,73 @@
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## Abseil CMake build instructions
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					### Recommended usage : incorporate Abseil into an  CMake project
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  For API / ABI compatibility reasons, it is recommended to build
 | 
				
			||||||
 | 
					  and use abseil in a subdirectory of your project or as an embedded
 | 
				
			||||||
 | 
					  dependency
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  This is similar to the recommended usage of the googletest framework
 | 
				
			||||||
 | 
					  ( https://github.com/google/googletest/blob/master/googletest/README.md )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  Build and use step-by-step
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  1- Download abseil and copy it in a sub-directory in your project.
 | 
				
			||||||
 | 
					      or add abseil as a git-submodule in your project
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  2- If not done yet, download and copy in your project the two dependencies of
 | 
				
			||||||
 | 
					      abseil `cctz` and `googletest`
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    * cctz  https://github.com/google/cctz
 | 
				
			||||||
 | 
					    * googletest https://github.com/google/googletest
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  3- You can then use the cmake command `add_subdirectory()` to include
 | 
				
			||||||
 | 
					  abseil directly and use the abseil targets in your project.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    Note: Abseil requires CCTZ and the googletest framework. Consequently,
 | 
				
			||||||
 | 
					    the targets  `gtest`, `gtest_main`, `gmock` and `cctz` need
 | 
				
			||||||
 | 
					    to be declared in your project before including abseil with `add_subdirectory`.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  4- Add the absl:: target you wish to use to the `target_link_libraries()`
 | 
				
			||||||
 | 
					    section of your executable or of your library
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      Here is a short CMakeLists.txt example of a possible project file
 | 
				
			||||||
 | 
					      using abseil
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      cmake_minimum_required(VERSION 2.8.12)
 | 
				
			||||||
 | 
					      project(my_project)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      set(CMAKE_CXX_FLAGS "-std=c++11 -stdlib=libc++ ${CMAKE_CXX_FLAGS}")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      add_subdirectory(googletest)
 | 
				
			||||||
 | 
					      add_subdirectory(cctz)
 | 
				
			||||||
 | 
					      add_subdirectory(abseil-cpp)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      add_executable(my_exe source.cpp)
 | 
				
			||||||
 | 
					      target_link_libraries(my_exe absl::base absl::synchronization absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					You will need to create your own CMake files for cctz until https://github.com/google/cctz/pull/54 lands.  As of this writing, that pull request requires -DBUILD_TESTING=OFF as it doesn't correctly export cctz's dependency on Google Benchmark.
 | 
				
			||||||
 | 
					    
 | 
				
			||||||
 | 
					    You will find here a non exhaustive list of absl public targets
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					      absl::base
 | 
				
			||||||
 | 
					      absl::algorithm
 | 
				
			||||||
 | 
					      absl::container
 | 
				
			||||||
 | 
					      absl::debugging
 | 
				
			||||||
 | 
					      absl::memory
 | 
				
			||||||
 | 
					      absl::meta
 | 
				
			||||||
 | 
					      absl::numeric
 | 
				
			||||||
 | 
					      absl::strings
 | 
				
			||||||
 | 
					      absl::synchronization
 | 
				
			||||||
 | 
					      absl::time
 | 
				
			||||||
 | 
					      absl::utility
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										79
									
								
								CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,79 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					cmake_minimum_required(VERSION 2.8.12)
 | 
				
			||||||
 | 
					project(absl)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# enable ctest
 | 
				
			||||||
 | 
					include(CTest)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/CMake)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					include(GNUInstallDirs)
 | 
				
			||||||
 | 
					include(AbseilHelpers)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# config options
 | 
				
			||||||
 | 
					set(ABSL_STD_CXX_FLAG "-std=c++11" CACHE STRING "c++ std flag (default: c++11)")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					##
 | 
				
			||||||
 | 
					## Using absl targets
 | 
				
			||||||
 | 
					##
 | 
				
			||||||
 | 
					## all public absl targets are
 | 
				
			||||||
 | 
					## exported with the absl:: prefix
 | 
				
			||||||
 | 
					##
 | 
				
			||||||
 | 
					## e.g absl::base absl::synchronization absl::strings ....
 | 
				
			||||||
 | 
					##
 | 
				
			||||||
 | 
					## DO NOT rely on the internal targets outside of the prefix
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# include current path
 | 
				
			||||||
 | 
					list(APPEND ABSL_COMMON_INCLUDE_DIRS ${CMAKE_CURRENT_SOURCE_DIR})
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -std=X
 | 
				
			||||||
 | 
					set(CMAKE_CXX_FLAGS "${ABSL_STD_CXX_FLAG} ${CMAKE_CXX_FLAGS}")
 | 
				
			||||||
 | 
					set(CMAKE_CXX_FLAGS "${CMAKE_CXX_WARNING_VLA} ${CMAKE_CXX_FLAGS} ")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# find dependencies
 | 
				
			||||||
 | 
					## pthread
 | 
				
			||||||
 | 
					find_package(Threads REQUIRED)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# commented: used only for standalone test
 | 
				
			||||||
 | 
					#add_subdirectory(cctz)
 | 
				
			||||||
 | 
					#add_subdirectory(googletest)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					## check targets
 | 
				
			||||||
 | 
					check_target(cctz)
 | 
				
			||||||
 | 
					check_target(gtest)
 | 
				
			||||||
 | 
					check_target(gtest_main)
 | 
				
			||||||
 | 
					check_target(gmock)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# -fexceptions
 | 
				
			||||||
 | 
					set(ABSL_EXCEPTIONS_FLAG "${CMAKE_CXX_EXCEPTIONS}")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# fix stuff
 | 
				
			||||||
 | 
					set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FIX_MSVC} ${CMAKE_CXX_FLAGS}") 
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND ABSL_TEST_COMMON_LIBRARIES
 | 
				
			||||||
 | 
					  gtest_main
 | 
				
			||||||
 | 
					  gtest
 | 
				
			||||||
 | 
					  gmock
 | 
				
			||||||
 | 
					  ${CMAKE_THREAD_LIBS_INIT}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					add_subdirectory(absl)
 | 
				
			||||||
| 
						 | 
					@ -10,6 +10,7 @@ standard library.
 | 
				
			||||||
- [Codemap](#codemap)
 | 
					- [Codemap](#codemap)
 | 
				
			||||||
- [License](#license)
 | 
					- [License](#license)
 | 
				
			||||||
- [Links](#links)
 | 
					- [Links](#links)
 | 
				
			||||||
 | 
					- [Build with cmake](#cmake)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
<a name="about"></a>
 | 
					<a name="about"></a>
 | 
				
			||||||
## About Abseil
 | 
					## About Abseil
 | 
				
			||||||
| 
						 | 
					@ -84,3 +85,8 @@ For more information about Abseil:
 | 
				
			||||||
* Peruse our
 | 
					* Peruse our
 | 
				
			||||||
  [Abseil Compatibility Guarantees](http://abseil.io/about/compatibility) to
 | 
					  [Abseil Compatibility Guarantees](http://abseil.io/about/compatibility) to
 | 
				
			||||||
  understand both what we promise to you, and what we expect of you in return.
 | 
					  understand both what we promise to you, and what we expect of you in return.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<a name="cmake"></a>
 | 
				
			||||||
 | 
					## Build with CMake
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					Please check the [CMake build instructions](CMake/README.md)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										30
									
								
								absl/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										30
									
								
								absl/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,30 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					add_subdirectory(base)
 | 
				
			||||||
 | 
					add_subdirectory(algorithm)
 | 
				
			||||||
 | 
					add_subdirectory(container)
 | 
				
			||||||
 | 
					add_subdirectory(debugging)
 | 
				
			||||||
 | 
					add_subdirectory(memory)
 | 
				
			||||||
 | 
					add_subdirectory(meta)
 | 
				
			||||||
 | 
					add_subdirectory(numeric)
 | 
				
			||||||
 | 
					add_subdirectory(strings)
 | 
				
			||||||
 | 
					add_subdirectory(synchronization)
 | 
				
			||||||
 | 
					add_subdirectory(time)
 | 
				
			||||||
 | 
					add_subdirectory(types)
 | 
				
			||||||
 | 
					add_subdirectory(utility)
 | 
				
			||||||
							
								
								
									
										63
									
								
								absl/algorithm/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										63
									
								
								absl/algorithm/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,63 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND ALGORITHM_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "algorithm.h"
 | 
				
			||||||
 | 
					  "container.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test algorithm_test
 | 
				
			||||||
 | 
					list(APPEND ALGORITHM_TEST_SRC
 | 
				
			||||||
 | 
					  "algorithm_test.cc"
 | 
				
			||||||
 | 
					  ${ALGORITHM_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${ALGORITHM_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_algorithm
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    algorithm
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    algorithm_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ALGORITHM_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::algorithm
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test container_test
 | 
				
			||||||
 | 
					set(CONTAINER_TEST_SRC "container_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    container_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${CONTAINER_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::algorithm
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
							
								
								
									
										341
									
								
								absl/base/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										341
									
								
								absl/base/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,341 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#    http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND BASE_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "attributes.h"
 | 
				
			||||||
 | 
					  "call_once.h"
 | 
				
			||||||
 | 
					  "casts.h"
 | 
				
			||||||
 | 
					  "config.h"
 | 
				
			||||||
 | 
					  "dynamic_annotations.h"
 | 
				
			||||||
 | 
					  "macros.h"
 | 
				
			||||||
 | 
					  "optimization.h"
 | 
				
			||||||
 | 
					  "policy_checks.h"
 | 
				
			||||||
 | 
					  "port.h"
 | 
				
			||||||
 | 
					  "thread_annotations.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND BASE_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/atomic_hook.h"
 | 
				
			||||||
 | 
					  "internal/cycleclock.h"
 | 
				
			||||||
 | 
					  "internal/endian.h"
 | 
				
			||||||
 | 
					  "internal/exception_testing.h"
 | 
				
			||||||
 | 
					  "internal/identity.h"
 | 
				
			||||||
 | 
					  "internal/invoke.h"
 | 
				
			||||||
 | 
					  "internal/log_severity.h"
 | 
				
			||||||
 | 
					  "internal/low_level_alloc.h"
 | 
				
			||||||
 | 
					  "internal/low_level_scheduling.h"
 | 
				
			||||||
 | 
					  "internal/malloc_extension_c.h"
 | 
				
			||||||
 | 
					  "internal/malloc_extension.h"
 | 
				
			||||||
 | 
					  "internal/malloc_hook_c.h"
 | 
				
			||||||
 | 
					  "internal/malloc_hook.h"
 | 
				
			||||||
 | 
					  "internal/malloc_hook_invoke.h"
 | 
				
			||||||
 | 
					  "internal/per_thread_tls.h"
 | 
				
			||||||
 | 
					  "internal/raw_logging.h"
 | 
				
			||||||
 | 
					  "internal/scheduling_mode.h"
 | 
				
			||||||
 | 
					  "internal/spinlock.h"
 | 
				
			||||||
 | 
					  "internal/spinlock_wait.h"
 | 
				
			||||||
 | 
					  "internal/sysinfo.h"
 | 
				
			||||||
 | 
					  "internal/thread_identity.h"
 | 
				
			||||||
 | 
					  "internal/throw_delegate.h"
 | 
				
			||||||
 | 
					  "internal/tsan_mutex_interface.h"
 | 
				
			||||||
 | 
					  "internal/unaligned_access.h"
 | 
				
			||||||
 | 
					  "internal/unscaledcycleclock.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# absl_base main library
 | 
				
			||||||
 | 
					list(APPEND BASE_SRC 
 | 
				
			||||||
 | 
					  "internal/cycleclock.cc"
 | 
				
			||||||
 | 
					  "internal/raw_logging.cc"
 | 
				
			||||||
 | 
					  "internal/spinlock.cc"
 | 
				
			||||||
 | 
					  "internal/sysinfo.cc"
 | 
				
			||||||
 | 
					  "internal/thread_identity.cc"
 | 
				
			||||||
 | 
					  "internal/unscaledcycleclock.cc"
 | 
				
			||||||
 | 
					  "internal/low_level_alloc.cc"
 | 
				
			||||||
 | 
					  "internal/malloc_hook.cc"
 | 
				
			||||||
 | 
					  ${BASE_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${BASE_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_base
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BASE_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl_dynamic_annotations
 | 
				
			||||||
 | 
					    absl_spinlock_wait
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    base
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# malloc extension library
 | 
				
			||||||
 | 
					set(MALLOC_EXTENSION_SRC "internal/malloc_extension.cc")
 | 
				
			||||||
 | 
					set(MALLOC_EXTENSION_PUBLIC_LIBRARIES absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_malloc_extension
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MALLOC_EXTENSION_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MALLOC_EXTENSION_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    malloc_extension
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# throw delegate library
 | 
				
			||||||
 | 
					set(THROW_DELEGATE_SRC "internal/throw_delegate.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_throw_delegate
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${THROW_DELEGATE_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${THROW_DELEGATE_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${ABSL_EXCEPTIONS_FLAG}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    throw_delegate
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# dynamic_annotations library
 | 
				
			||||||
 | 
					set(DYNAMIC_ANNOTATIONS_SRC "dynamic_annotations.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_dynamic_annotations
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${DYNAMIC_ANNOTATIONS_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# spinlock_wait library
 | 
				
			||||||
 | 
					set(SPINLOCK_WAIT_SRC "internal/spinlock_wait.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_spinlock_wait
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SPINLOCK_WAIT_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# malloc_internal library
 | 
				
			||||||
 | 
					list(APPEND MALLOC_INTERNAL_SRC
 | 
				
			||||||
 | 
					  "internal/low_level_alloc.cc"
 | 
				
			||||||
 | 
					  "internal/malloc_hook.cc"
 | 
				
			||||||
 | 
					  "internal/malloc_hook_mmap_linux.inc"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_malloc_internal
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MALLOC_INTERNAL_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl_dynamic_annotations
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# call once test
 | 
				
			||||||
 | 
					set(CALL_ONCE_TEST_SRC "call_once_test.cc")
 | 
				
			||||||
 | 
					set(CALL_ONCE_TEST_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    call_once_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${CALL_ONCE_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${CALL_ONCE_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test bit_cast_test
 | 
				
			||||||
 | 
					set(BIT_CAST_TEST_SRC "bit_cast_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    bit_cast_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BIT_CAST_TEST_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test absl_throw_delegate_test
 | 
				
			||||||
 | 
					set(THROW_DELEGATE_TEST_SRC "throw_delegate_test.cc")
 | 
				
			||||||
 | 
					set(THROW_DELEGATE_TEST_PUBLIC_LIBRARIES absl::base absl_throw_delegate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    throw_delegate_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${THROW_DELEGATE_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${THROW_DELEGATE_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test invoke_test
 | 
				
			||||||
 | 
					set(INVOKE_TEST_SRC "invoke_test.cc")
 | 
				
			||||||
 | 
					set(INVOKE_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    invoke_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${INVOKE_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${INVOKE_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test spinlock_test_common
 | 
				
			||||||
 | 
					set(SPINLOCK_TEST_COMMON_SRC "spinlock_test_common.cc")
 | 
				
			||||||
 | 
					set(SPINLOCK_TEST_COMMON_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    spinlock_test_common
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SPINLOCK_TEST_COMMON_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SPINLOCK_TEST_COMMON_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test spinlock_test
 | 
				
			||||||
 | 
					set(SPINLOCK_TEST_SRC "spinlock_test_common.cc")
 | 
				
			||||||
 | 
					set(SPINLOCK_TEST_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    spinlock_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SPINLOCK_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SPINLOCK_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test endian_test
 | 
				
			||||||
 | 
					set(ENDIAN_TEST_SRC "internal/endian_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    endian_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ENDIAN_TEST_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test config_test
 | 
				
			||||||
 | 
					set(CONFIG_TEST_SRC "config_test.cc")
 | 
				
			||||||
 | 
					set(CONFIG_TEST_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    config_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${CONFIG_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${CONFIG_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test raw_logging_test
 | 
				
			||||||
 | 
					set(RAW_LOGGING_TEST_SRC "raw_logging_test.cc")
 | 
				
			||||||
 | 
					set(RAW_LOGGING_TEST_PUBLIC_LIBRARIES absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    raw_logging_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${RAW_LOGGING_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${RAW_LOGGING_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test sysinfo_test
 | 
				
			||||||
 | 
					set(SYSINFO_TEST_SRC "internal/sysinfo_test.cc")
 | 
				
			||||||
 | 
					set(SYSINFO_TEST_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    sysinfo_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SYSINFO_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SYSINFO_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test low_level_alloc_test
 | 
				
			||||||
 | 
					set(LOW_LEVEL_ALLOC_TEST_SRC "internal/low_level_alloc_test.cc")
 | 
				
			||||||
 | 
					set(LOW_LEVEL_ALLOC_TEST_PUBLIC_LIBRARIES absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    low_level_alloc_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${LOW_LEVEL_ALLOC_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${LOW_LEVEL_ALLOC_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test thread_identity_test
 | 
				
			||||||
 | 
					set(THREAD_IDENTITY_TEST_SRC "internal/thread_identity_test.cc")
 | 
				
			||||||
 | 
					set(THREAD_IDENTITY_TEST_PUBLIC_LIBRARIES absl::base absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    thread_identity_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${THREAD_IDENTITY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${THREAD_IDENTITY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test absl_malloc_extension_system_malloc_test
 | 
				
			||||||
 | 
					set(MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_SRC "internal/malloc_extension_test.cc")
 | 
				
			||||||
 | 
					set(MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_PUBLIC_LIBRARIES absl::base absl_malloc_extension)
 | 
				
			||||||
 | 
					set(MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_PRIVATE_COMPILE_FLAGS "-DABSL_MALLOC_EXTENSION_TEST_ALLOW_MISSING_EXTENSION=1")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_malloc_extension_system_malloc_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${MALLOC_EXTENSION_SYSTEM_MALLOC_TEST_PRIVATE_COMPILE_FLAGS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										126
									
								
								absl/container/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										126
									
								
								absl/container/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,126 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND CONTAINER_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "fixed_array.h"
 | 
				
			||||||
 | 
					  "inlined_vector.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND CONTAINER_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/test_instance_tracker.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_container
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    container
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND TEST_INSTANCE_TRACKER_LIB_SRC
 | 
				
			||||||
 | 
					  "internal/test_instance_tracker.cc"
 | 
				
			||||||
 | 
					  ${CONTAINER_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${CONTAINER_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    test_instance_tracker_lib
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${TEST_INSTANCE_TRACKER_LIB_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::container
 | 
				
			||||||
 | 
					  DISABLE_INSTALL
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test fixed_array_test
 | 
				
			||||||
 | 
					set(FIXED_ARRAY_TEST_SRC "fixed_array_test.cc")
 | 
				
			||||||
 | 
					set(FIXED_ARRAY_TEST_PUBLIC_LIBRARIES absl::base absl_throw_delegate test_instance_tracker_lib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    fixed_array_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${FIXED_ARRAY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${FIXED_ARRAY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${ABSL_EXCEPTIONS_FLAG}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    fixed_array_test_noexceptions
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${FIXED_ARRAY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${FIXED_ARRAY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test inlined_vector_test
 | 
				
			||||||
 | 
					set(INLINED_VECTOR_TEST_SRC "inlined_vector_test.cc")
 | 
				
			||||||
 | 
					set(INLINED_VECTOR_TEST_PUBLIC_LIBRARIES absl::base absl_throw_delegate test_instance_tracker_lib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    inlined_vector_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${INLINED_VECTOR_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${INLINED_VECTOR_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    inlined_vector_test_noexceptions
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${INLINED_VECTOR_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${INLINED_VECTOR_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${ABSL_NOEXCEPTION_CXXFLAGS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test test_instance_tracker_test
 | 
				
			||||||
 | 
					set(TEST_INSTANCE_TRACKER_TEST_SRC "internal/test_instance_tracker_test.cc")
 | 
				
			||||||
 | 
					set(TEST_INSTANCE_TRACKER_TEST_PUBLIC_LIBRARIES absl::base absl_throw_delegate test_instance_tracker_lib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    test_instance_tracker_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${TEST_INSTANCE_TRACKER_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${TEST_INSTANCE_TRACKER_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										93
									
								
								absl/debugging/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										93
									
								
								absl/debugging/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,93 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND DEBUGGING_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "leak_check.h"
 | 
				
			||||||
 | 
					  "stacktrace.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND DEBUGGING_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/address_is_readable.h"
 | 
				
			||||||
 | 
					  "internal/elf_mem_image.h"
 | 
				
			||||||
 | 
					  "internal/stacktrace_config.h"
 | 
				
			||||||
 | 
					  "internal/vdso_support.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND STACKTRACE_SRC
 | 
				
			||||||
 | 
					  "stacktrace.cc"
 | 
				
			||||||
 | 
					  "internal/address_is_readable.cc"
 | 
				
			||||||
 | 
					  "internal/elf_mem_image.cc"
 | 
				
			||||||
 | 
					  "internal/vdso_support.cc"
 | 
				
			||||||
 | 
					  ${DEBUGGING_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${DEBUGGING_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_stacktrace
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STACKTRACE_SRC}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    stacktrace
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND LEAK_CHECK_SRC
 | 
				
			||||||
 | 
					  "leak_check.cc"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# leak_check library
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_leak_check
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${LEAK_CHECK_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl_base
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    leak_check
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# component target
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_debugging
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl_stacktrace absl_leak_check
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    debugging
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test leak_check_test
 | 
				
			||||||
 | 
					list(APPEND LEAK_CHECK_TEST_SRC "leak_check_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    leak_check_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${LEAK_CHECK_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl_leak_check
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										52
									
								
								absl/memory/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										52
									
								
								absl/memory/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,52 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND MEMORY_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "memory.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_memory
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    memory
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test memory_test
 | 
				
			||||||
 | 
					list(APPEND MEMORY_TEST_SRC
 | 
				
			||||||
 | 
					  "memory_test.cc"
 | 
				
			||||||
 | 
					  ${MEMORY_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					set(MEMORY_TEST_PUBLIC_LIBRARIES absl::base absl::memory)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    memory_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MEMORY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MEMORY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										49
									
								
								absl/meta/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										49
									
								
								absl/meta/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,49 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND META_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "type_traits.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test type_traits_test
 | 
				
			||||||
 | 
					list(APPEND TYPE_TRAITS_TEST_SRC
 | 
				
			||||||
 | 
					  "type_traits_test.cc"
 | 
				
			||||||
 | 
					  ${META_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_meta
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    meta
 | 
				
			||||||
 | 
					 )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    type_traits_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${TYPE_TRAITS_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${TYPE_TRAITS_TEST_PUBLIC_LIBRARIES} absl::meta
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										62
									
								
								absl/numeric/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										62
									
								
								absl/numeric/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,62 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND NUMERIC_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "int128.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# library 128
 | 
				
			||||||
 | 
					list(APPEND INT128_SRC
 | 
				
			||||||
 | 
					  "int128.cc"
 | 
				
			||||||
 | 
					  ${NUMERIC_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_int128
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${INT128_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${INT128_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    int128
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_numeric
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::int128
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    numeric
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test int128_test
 | 
				
			||||||
 | 
					set(INT128_TEST_SRC "int128_test.cc")
 | 
				
			||||||
 | 
					set(INT128_TEST_PUBLIC_LIBRARIES absl::numeric absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    int128_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${INT128_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${INT128_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										299
									
								
								absl/strings/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										299
									
								
								absl/strings/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,299 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND STRINGS_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "ascii.h"
 | 
				
			||||||
 | 
					  "escaping.h"
 | 
				
			||||||
 | 
					  "match.h"
 | 
				
			||||||
 | 
					  "numbers.h"
 | 
				
			||||||
 | 
					  "str_cat.h"
 | 
				
			||||||
 | 
					  "string_view.h"
 | 
				
			||||||
 | 
					  "strip.h"
 | 
				
			||||||
 | 
					  "str_join.h"
 | 
				
			||||||
 | 
					  "str_replace.h"
 | 
				
			||||||
 | 
					  "str_split.h"
 | 
				
			||||||
 | 
					  "substitute.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND STRINGS_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/char_map.h"
 | 
				
			||||||
 | 
					  "internal/memutil.h"
 | 
				
			||||||
 | 
					  "internal/ostringstream.h"
 | 
				
			||||||
 | 
					  "internal/resize_uninitialized.h"
 | 
				
			||||||
 | 
					  "internal/str_join_internal.h"
 | 
				
			||||||
 | 
					  "internal/str_split_internal.h"
 | 
				
			||||||
 | 
					  "internal/utf8.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# add string library
 | 
				
			||||||
 | 
					list(APPEND STRINGS_SRC
 | 
				
			||||||
 | 
					  "ascii.cc"
 | 
				
			||||||
 | 
					  "escaping.cc"
 | 
				
			||||||
 | 
					  "internal/memutil.cc"
 | 
				
			||||||
 | 
					  "internal/memutil.h"
 | 
				
			||||||
 | 
					  "internal/utf8.cc"
 | 
				
			||||||
 | 
					  "match.cc"
 | 
				
			||||||
 | 
					  "numbers.cc"
 | 
				
			||||||
 | 
					  "str_cat.cc"
 | 
				
			||||||
 | 
					  "str_replace.cc"
 | 
				
			||||||
 | 
					  "str_split.cc"
 | 
				
			||||||
 | 
					  "string_view.cc"
 | 
				
			||||||
 | 
					  "substitute.cc"
 | 
				
			||||||
 | 
					  ${STRINGS_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${STRINGS_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					set(STRINGS_PUBLIC_LIBRARIES absl::base absl_throw_delegate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_strings
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STRINGS_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STRINGS_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    strings
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test match_test
 | 
				
			||||||
 | 
					set(MATCH_TEST_SRC "match_test.cc")
 | 
				
			||||||
 | 
					set(MATCH_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    match_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MATCH_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MATCH_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test escaping_test
 | 
				
			||||||
 | 
					set(ESCAPING_TEST_SRC "escaping_test.cc")
 | 
				
			||||||
 | 
					set(ESCAPING_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    escaping_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ESCAPING_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${ESCAPING_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test ascii_test
 | 
				
			||||||
 | 
					set(ASCII_TEST_SRC "ascii_test.cc")
 | 
				
			||||||
 | 
					set(ASCII_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    ascii_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ASCII_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${ASCII_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test memutil_test
 | 
				
			||||||
 | 
					set(MEMUTIL_TEST_SRC "internal/memutil_test.cc")
 | 
				
			||||||
 | 
					set(MEMUTIL_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    memutil_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MEMUTIL_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MEMUTIL_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test utf8_test
 | 
				
			||||||
 | 
					set(UTF8_TEST_SRC "internal/utf8_test.cc")
 | 
				
			||||||
 | 
					set(UTF8_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    utf8_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${UTF8_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${UTF8_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test string_view_test
 | 
				
			||||||
 | 
					set(STRING_VIEW_TEST_SRC "string_view_test.cc")
 | 
				
			||||||
 | 
					set(STRING_VIEW_TEST_PUBLIC_LIBRARIES absl::strings absl_throw_delegate absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    string_view_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STRING_VIEW_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STRING_VIEW_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test substitute_test
 | 
				
			||||||
 | 
					set(SUBSTITUTE_TEST_SRC "substitute_test.cc")
 | 
				
			||||||
 | 
					set(SUBSTITUTE_TEST_PUBLIC_LIBRARIES absl::strings absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    substitute_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SUBSTITUTE_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SUBSTITUTE_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test str_replace_test
 | 
				
			||||||
 | 
					set(STR_REPLACE_TEST_SRC "str_replace_test.cc")
 | 
				
			||||||
 | 
					set(STR_REPLACE_TEST_PUBLIC_LIBRARIES absl::strings absl::base absl_throw_delegate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    str_replace_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STR_REPLACE_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STR_REPLACE_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test str_split_test
 | 
				
			||||||
 | 
					set(STR_SPLIT_TEST_SRC "str_split_test.cc")
 | 
				
			||||||
 | 
					set(STR_SPLIT_TEST_PUBLIC_LIBRARIES absl::strings absl::base absl_throw_delegate)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    str_split_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STR_SPLIT_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STR_SPLIT_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test ostringstream_test
 | 
				
			||||||
 | 
					set(OSTRINGSTREAM_TEST_SRC "internal/ostringstream_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    ostringstream_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${OSTRINGSTREAM_TEST_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test resize_uninitialized_test
 | 
				
			||||||
 | 
					set(RESIZE_UNINITIALIZED_TEST_SRC "internal/resize_uninitialized_test.cc")
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    resize_uninitialized_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${RESIZE_UNINITIALIZED_TEST_SRC}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test str_join_test
 | 
				
			||||||
 | 
					set(STR_JOIN_TEST_SRC "str_join_test.cc")
 | 
				
			||||||
 | 
					set(STR_JOIN_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    str_join_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STR_JOIN_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STR_JOIN_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test str_cat_test
 | 
				
			||||||
 | 
					set(STR_CAT_TEST_SRC "str_cat_test.cc")
 | 
				
			||||||
 | 
					set(STR_CAT_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    str_cat_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STR_CAT_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STR_CAT_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test numbers_test
 | 
				
			||||||
 | 
					set(NUMBERS_TEST_SRC "numbers_test.cc")
 | 
				
			||||||
 | 
					set(NUMBERS_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    numbers_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${NUMBERS_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${NUMBERS_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test strip_test
 | 
				
			||||||
 | 
					set(STRIP_TEST_SRC "strip_test.cc")
 | 
				
			||||||
 | 
					set(STRIP_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    strip_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${STRIP_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${STRIP_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test char_map_test
 | 
				
			||||||
 | 
					set(CHAR_MAP_TEST_SRC "internal/char_map_test.cc")
 | 
				
			||||||
 | 
					set(CHAR_MAP_TEST_PUBLIC_LIBRARIES absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    char_map_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${CHAR_MAP_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${CHAR_MAP_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										154
									
								
								absl/synchronization/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										154
									
								
								absl/synchronization/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,154 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND SYNCHRONIZATION_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "barrier.h"
 | 
				
			||||||
 | 
					  "blocking_counter.h"
 | 
				
			||||||
 | 
					  "mutex.h"
 | 
				
			||||||
 | 
					  "notification.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND SYNCHRONIZATION_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/create_thread_identity.h"
 | 
				
			||||||
 | 
					  "internal/graphcycles.h"
 | 
				
			||||||
 | 
					  "internal/kernel_timeout.h"
 | 
				
			||||||
 | 
					  "internal/per_thread_sem.h"
 | 
				
			||||||
 | 
					  "internal/thread_pool.h"
 | 
				
			||||||
 | 
					  "internal/waiter.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# syncrhonisation library
 | 
				
			||||||
 | 
					list(APPEND SYNCHRONIZATION_SRC 
 | 
				
			||||||
 | 
					  "barrier.cc"
 | 
				
			||||||
 | 
					  "blocking_counter.cc"
 | 
				
			||||||
 | 
					  "internal/create_thread_identity.cc"
 | 
				
			||||||
 | 
					  "internal/per_thread_sem.cc"
 | 
				
			||||||
 | 
					  "internal/waiter.cc"
 | 
				
			||||||
 | 
					  "internal/graphcycles.cc"
 | 
				
			||||||
 | 
					  "notification.cc"
 | 
				
			||||||
 | 
					  "mutex.cc"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					set(SYNCHRONIZATION_PUBLIC_LIBRARIES absl::base absl_malloc_extension absl::time)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_synchronization
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SYNCHRONIZATION_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SYNCHRONIZATION_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    synchronization
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test barrier_test
 | 
				
			||||||
 | 
					set(BARRIER_TEST_SRC "barrier_test.cc")
 | 
				
			||||||
 | 
					set(BARRIER_TEST_PUBLIC_LIBRARIES absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    barrier_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BARRIER_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${BARRIER_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test blocking_counter_test
 | 
				
			||||||
 | 
					set(BLOCKING_COUNTER_TEST_SRC "blocking_counter_test.cc")
 | 
				
			||||||
 | 
					set(BLOCKING_COUNTER_TEST_PUBLIC_LIBRARIES absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    blocking_counter_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BLOCKING_COUNTER_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${BLOCKING_COUNTER_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test graphcycles_test
 | 
				
			||||||
 | 
					set(GRAPHCYCLES_TEST_SRC "internal/graphcycles_test.cc")
 | 
				
			||||||
 | 
					set(GRAPHCYCLES_TEST_PUBLIC_LIBRARIES absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    graphcycles_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${GRAPHCYCLES_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${GRAPHCYCLES_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test mutex_test
 | 
				
			||||||
 | 
					set(MUTEX_TEST_SRC "mutex_test.cc")
 | 
				
			||||||
 | 
					set(MUTEX_TEST_PUBLIC_LIBRARIES absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    mutex_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${MUTEX_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${MUTEX_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test notification_test
 | 
				
			||||||
 | 
					set(NOTIFICATION_TEST_SRC "notification_test.cc")
 | 
				
			||||||
 | 
					set(NOTIFICATION_TEST_PUBLIC_LIBRARIES absl::synchronization)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    notification_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${NOTIFICATION_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${NOTIFICATION_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test per_thread_sem_test_common
 | 
				
			||||||
 | 
					set(PER_THREAD_SEM_TEST_COMMON_SRC "internal/per_thread_sem_test.cc")
 | 
				
			||||||
 | 
					set(PER_THREAD_SEM_TEST_COMMON_PUBLIC_LIBRARIES absl::synchronization absl::strings)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    per_thread_sem_test_common
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${PER_THREAD_SEM_TEST_COMMON_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${PER_THREAD_SEM_TEST_COMMON_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										78
									
								
								absl/time/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										78
									
								
								absl/time/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,78 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND TIME_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "clock.h"
 | 
				
			||||||
 | 
					  "time.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND TIME_INTERNAL_HEADERS
 | 
				
			||||||
 | 
					  "internal/test_util.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND TIME_SRC
 | 
				
			||||||
 | 
					  "time.cc"
 | 
				
			||||||
 | 
					  "clock.cc"
 | 
				
			||||||
 | 
					  "duration.cc"
 | 
				
			||||||
 | 
					  "format.cc"
 | 
				
			||||||
 | 
					  ${TIME_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					  ${TIME_INTERNAL_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					set(TIME_PUBLIC_LIBRARIES absl::base absl::stacktrace absl::int128 cctz)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_time
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${TIME_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${TIME_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PUBLIC_INCLUDE_DIRS
 | 
				
			||||||
 | 
					    ${CCTZ_INCLUDE_DIRS}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    time
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test time_test
 | 
				
			||||||
 | 
					list(APPEND TIME_TEST_SRC
 | 
				
			||||||
 | 
					  "time_test.cc"
 | 
				
			||||||
 | 
					  "clock_test.cc"
 | 
				
			||||||
 | 
					  "duration_test.cc"
 | 
				
			||||||
 | 
					  "format_test.cc"
 | 
				
			||||||
 | 
					  "time_norm_test.cc"
 | 
				
			||||||
 | 
					  "time_test.cc"
 | 
				
			||||||
 | 
					  "time_zone_test.cc"
 | 
				
			||||||
 | 
					  "internal/test_util.cc"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					set(TIME_TEST_PUBLIC_LIBRARIES absl::time)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    time_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${TIME_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${TIME_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										171
									
								
								absl/types/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										171
									
								
								absl/types/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,171 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND TYPES_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "any.h"
 | 
				
			||||||
 | 
					  "bad_any_cast.h"
 | 
				
			||||||
 | 
					  "bad_optional_access.h"
 | 
				
			||||||
 | 
					  "optional.h"
 | 
				
			||||||
 | 
					  "span.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# any library
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_any
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::utility
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    any
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# span library
 | 
				
			||||||
 | 
					absl_header_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_span
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::utility
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    span
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# bad_any_cast library
 | 
				
			||||||
 | 
					list(APPEND BAD_ANY_CAST_SRC
 | 
				
			||||||
 | 
					  "bad_any_cast.cc"
 | 
				
			||||||
 | 
					  ${TYPES_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_bad_any_cast
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BAD_ANY_CAST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::base absl::any
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    bad_any_cast
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# optional library
 | 
				
			||||||
 | 
					list(APPEND OPTIONAL_SRC
 | 
				
			||||||
 | 
					  "optional.cc"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_optional
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${OPTIONAL_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    absl::base
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    optional
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					set(BAD_OPTIONAL_ACCESS_SRC "bad_optional_access.cc")
 | 
				
			||||||
 | 
					set(BAD_OPTIONAL_ACCESS_LIBRARIES absl::base)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_bad_optional_access
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${BAD_OPTIONAL_ACCESS_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${BAD_OPTIONAL_ACCESS_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    bad_optional_access
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test any_test
 | 
				
			||||||
 | 
					set(ANY_TEST_SRC "any_test.cc")
 | 
				
			||||||
 | 
					set(ANY_TEST_PUBLIC_LIBRARIES absl::base absl::throw_delegate absl::any absl::bad_any_cast test_instance_tracker_lib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    any_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ANY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${ANY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${ABSL_EXCEPTIONS_FLAG}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test any_test_noexceptions
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    any_test_noexceptions
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${ANY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${ANY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test span_test
 | 
				
			||||||
 | 
					set(SPAN_TEST_SRC "span_test.cc")
 | 
				
			||||||
 | 
					set(SPAN_TEST_PUBLIC_LIBRARIES absl::base absl::strings absl::throw_delegate absl::span test_instance_tracker_lib)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    span_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SPAN_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SPAN_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  PRIVATE_COMPILE_FLAGS
 | 
				
			||||||
 | 
					    ${ABSL_EXCEPTIONS_FLAG}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test span_test_noexceptions
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    span_test_noexceptions
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${SPAN_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${SPAN_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test optional_test
 | 
				
			||||||
 | 
					set(OPTIONAL_TEST_SRC "optional_test.cc")
 | 
				
			||||||
 | 
					set(OPTIONAL_TEST_PUBLIC_LIBRARIES absl::base absl::throw_delegate absl::optional absl_bad_optional_access)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    optional_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${OPTIONAL_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${OPTIONAL_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										60
									
								
								absl/utility/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										60
									
								
								absl/utility/CMakeLists.txt
									
										
									
									
									
										Normal file
									
								
							| 
						 | 
					@ -0,0 +1,60 @@
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Copyright 2017 The Abseil Authors.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Licensed under the Apache License, Version 2.0 (the "License");
 | 
				
			||||||
 | 
					# you may not use this file except in compliance with the License.
 | 
				
			||||||
 | 
					# You may obtain a copy of the License at
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					#      http://www.apache.org/licenses/LICENSE-2.0
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					# Unless required by applicable law or agreed to in writing, software
 | 
				
			||||||
 | 
					# distributed under the License is distributed on an "AS IS" BASIS,
 | 
				
			||||||
 | 
					# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | 
				
			||||||
 | 
					# See the License for the specific language governing permissions and
 | 
				
			||||||
 | 
					# limitations under the License.
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND UTILITY_PUBLIC_HEADERS
 | 
				
			||||||
 | 
					  "utility.h"
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					list(APPEND UTILITY_SRC
 | 
				
			||||||
 | 
					  "utility.cc"
 | 
				
			||||||
 | 
					  ${UTILITY_PUBLIC_HEADERS}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_library(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    absl_utility
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${UTILITY_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${UTILITY_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					  EXPORT_NAME
 | 
				
			||||||
 | 
					    utility
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					## TESTS
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# test utility_test
 | 
				
			||||||
 | 
					set(UTILITY_TEST_SRC "utility_test.cc")
 | 
				
			||||||
 | 
					set(UTILITY_TEST_PUBLIC_LIBRARIES absl::utility)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					absl_test(
 | 
				
			||||||
 | 
					  TARGET
 | 
				
			||||||
 | 
					    utility_test
 | 
				
			||||||
 | 
					  SOURCES
 | 
				
			||||||
 | 
					    ${UTILITY_TEST_SRC}
 | 
				
			||||||
 | 
					  PUBLIC_LIBRARIES
 | 
				
			||||||
 | 
					    ${UTILITY_TEST_PUBLIC_LIBRARIES}
 | 
				
			||||||
 | 
					)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue