Merge remote-tracking branch 'github/master'
The git.xiph.org and github branches had diverged.
This commit is contained in:
commit
d7ac86c97a
@ -48,7 +48,7 @@ function(configure_pkg_config_file pkg_config_file_in)
|
||||
set(includedir ${CMAKE_INSTALL_FULL_INCLUDEDIR})
|
||||
set(VERSION ${PROJECT_VERSION})
|
||||
string(REPLACE ".in" "" pkg_config_file ${pkg_config_file_in})
|
||||
configure_file(${pkg_config_file_in} ${CMAKE_CURRENT_BINARY_DIR}/${pkg_config_file} @ONLY)
|
||||
configure_file(${pkg_config_file_in} ${pkg_config_file} @ONLY)
|
||||
endfunction()
|
||||
|
||||
message(STATUS "Configuring ${PROJECT_NAME} ${PROJECT_VERSION}")
|
||||
@ -58,6 +58,7 @@ check_include_files(inttypes.h INCLUDE_INTTYPES_H)
|
||||
check_include_files(stdint.h INCLUDE_STDINT_H)
|
||||
check_include_files(sys/types.h INCLUDE_SYS_TYPES_H)
|
||||
|
||||
list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
||||
set(SIZE16 int16_t)
|
||||
set(USIZE16 uint16_t)
|
||||
set(SIZE32 int32_t)
|
||||
@ -65,7 +66,9 @@ set(USIZE32 uint32_t)
|
||||
set(SIZE64 int64_t)
|
||||
set(USIZE64 uint64_t)
|
||||
|
||||
configure_file(include/ogg/config_types.h.in ${CMAKE_CURRENT_BINARY_DIR}/include/ogg/config_types.h @ONLY)
|
||||
include(CheckSizes)
|
||||
|
||||
configure_file(include/ogg/config_types.h.in include/ogg/config_types.h @ONLY)
|
||||
|
||||
set(OGG_HEADERS
|
||||
${CMAKE_CURRENT_BINARY_DIR}/include/ogg/config_types.h
|
||||
|
73
cmake/CheckSizes.cmake
Normal file
73
cmake/CheckSizes.cmake
Normal file
@ -0,0 +1,73 @@
|
||||
include(CheckTypeSize)
|
||||
|
||||
check_type_size("int16_t" INT16_SIZE LANGUAGE C)
|
||||
check_type_size("uint16_t" UINT16_SIZE LANGUAGE C)
|
||||
check_type_size("u_int16_t" U_INT16_SIZE LANGUAGE C)
|
||||
check_type_size("int32_t" INT32_SIZE LANGUAGE C)
|
||||
check_type_size("uint32_t" UINT32_SIZE LANGUAGE C)
|
||||
check_type_size("u_int32_t" U_INT32_SIZE LANGUAGE C)
|
||||
check_type_size("int64_t" INT64_SIZE LANGUAGE C)
|
||||
check_type_size("short" SHORT_SIZE LANGUAGE C)
|
||||
check_type_size("int" INT_SIZE LANGUAGE C)
|
||||
check_type_size("long" LONG_SIZE LANGUAGE C)
|
||||
check_type_size("long long" LONG_LONG_SIZE LANGUAGE C)
|
||||
|
||||
if(INT16_SIZE EQUAL 2)
|
||||
set(SIZE16 "int16_t")
|
||||
elseif(SHORT_SIZE EQUAL 2)
|
||||
set(SIZE16 "short")
|
||||
elseif(INT_SIZE EQUAL 2)
|
||||
set(SIZE16 "int")
|
||||
else()
|
||||
message(FATAL_ERROR "No 16 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(UINT16_SIZE EQUAL 2)
|
||||
set(USIZE16 "uint16_t")
|
||||
elseif(SHORT_SIZE EQUAL 2)
|
||||
set(USIZE16 "unsigned short")
|
||||
elseif(INT_SIZE EQUAL 2)
|
||||
set(USIZE16 "unsigned int")
|
||||
elseif(U_INT_SIZE EQUAL 2)
|
||||
set(USIZE16 "u_int16_t")
|
||||
else()
|
||||
message(FATAL_ERROR "No unsigned 16 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(INT32_SIZE EQUAL 4)
|
||||
set(SIZE32 "int32_t")
|
||||
elseif(SHORT_SIZE EQUAL 4)
|
||||
set(SIZE32 "short")
|
||||
elseif(INT_SIZE EQUAL 4)
|
||||
set(SIZE32 "int")
|
||||
elseif(LONG_SIZE EQUAL 4)
|
||||
set(SIZE16 "long")
|
||||
else()
|
||||
message(FATAL_ERROR "No 32 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(UINT32_SIZE EQUAL 4)
|
||||
set(USIZE32 "uint32_t")
|
||||
elseif(SHORT_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned short")
|
||||
elseif(INT_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned int")
|
||||
elseif(LONG_SIZE EQUAL 4)
|
||||
set(USIZE32 "unsigned long")
|
||||
elseif(U_INT_SIZE EQUAL 4)
|
||||
set(USIZE32 "u_int32_t")
|
||||
else()
|
||||
message(FATAL_ERROR "No unsigned 32 bit type found on this platform!")
|
||||
endif()
|
||||
|
||||
if(INT64_SIZE EQUAL 8)
|
||||
set(SIZE64 "int64_t")
|
||||
elseif(INT_SIZE EQUAL 8)
|
||||
set(SIZE64 "int")
|
||||
elseif(LONG_SIZE EQUAL 8)
|
||||
set(SIZE64 "long")
|
||||
elseif(LONG_LONG_SIZE EQUAL 8)
|
||||
set(SIZE64 "long long")
|
||||
else()
|
||||
message(FATAL_ERROR "No 64 bit type found on this platform!")
|
||||
endif()
|
@ -1,7 +1,7 @@
|
||||
#ifndef __CONFIG_TYPES_H__
|
||||
#define __CONFIG_TYPES_H__
|
||||
|
||||
/* these are filled in by configure */
|
||||
/* these are filled in by configure or cmake*/
|
||||
#define INCLUDE_INTTYPES_H @INCLUDE_INTTYPES_H@
|
||||
#define INCLUDE_STDINT_H @INCLUDE_STDINT_H@
|
||||
#define INCLUDE_SYS_TYPES_H @INCLUDE_SYS_TYPES_H@
|
||||
|
Loading…
Reference in New Issue
Block a user