aboutsummaryrefslogtreecommitdiff
path: root/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'cmake')
-rw-r--r--cmake/CheckSizes.cmake73
-rw-r--r--cmake/OggConfig.cmake.in16
2 files changed, 89 insertions, 0 deletions
diff --git a/cmake/CheckSizes.cmake b/cmake/CheckSizes.cmake
new file mode 100644
index 0000000..4d6c8a0
--- /dev/null
+++ b/cmake/CheckSizes.cmake
@@ -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()
diff --git a/cmake/OggConfig.cmake.in b/cmake/OggConfig.cmake.in
new file mode 100644
index 0000000..43de6a9
--- /dev/null
+++ b/cmake/OggConfig.cmake.in
@@ -0,0 +1,16 @@
+@PACKAGE_INIT@
+
+set(Ogg_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@")
+set(OGG_INCLUDE_DIR "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@")
+set(Ogg_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@")
+set(OGG_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_FULL_INCLUDEDIR@")
+
+include(${CMAKE_CURRENT_LIST_DIR}/OggTargets.cmake)
+
+set(Ogg_LIBRARY Ogg::ogg)
+set(OGG_LIBRARY Ogg::ogg)
+set(Ogg_LIBRARIES Ogg::ogg)
+set(OGG_LIBRARIES Ogg::ogg)
+
+check_required_components(Ogg)
+set(OGG_FOUND 1)