mirror of
https://github.com/google/cpu_features.git
synced 2025-04-28 23:43:37 +02:00
Guarding header use with architecture (#56)
This commit is contained in:
parent
89ec4b0744
commit
4155ee7e36
@ -62,4 +62,8 @@ const char* GetAarch64FeaturesEnumName(Aarch64FeaturesEnum);
|
|||||||
|
|
||||||
CPU_FEATURES_END_CPP_NAMESPACE
|
CPU_FEATURES_END_CPP_NAMESPACE
|
||||||
|
|
||||||
|
#if !defined(CPU_FEATURES_ARCH_AARCH64)
|
||||||
|
#error "Including cpuinfo_aarch64.h from a non-aarch64 target."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // CPU_FEATURES_INCLUDE_CPUINFO_AARCH64_H_
|
#endif // CPU_FEATURES_INCLUDE_CPUINFO_AARCH64_H_
|
||||||
|
@ -81,4 +81,8 @@ const char* GetArmFeaturesEnumName(ArmFeaturesEnum);
|
|||||||
|
|
||||||
CPU_FEATURES_END_CPP_NAMESPACE
|
CPU_FEATURES_END_CPP_NAMESPACE
|
||||||
|
|
||||||
|
#if !defined(CPU_FEATURES_ARCH_ARM)
|
||||||
|
#error "Including cpuinfo_arm.h from a non-arm target."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // CPU_FEATURES_INCLUDE_CPUINFO_ARM_H_
|
#endif // CPU_FEATURES_INCLUDE_CPUINFO_ARM_H_
|
||||||
|
@ -50,4 +50,8 @@ const char* GetMipsFeaturesEnumName(MipsFeaturesEnum);
|
|||||||
|
|
||||||
CPU_FEATURES_END_CPP_NAMESPACE
|
CPU_FEATURES_END_CPP_NAMESPACE
|
||||||
|
|
||||||
|
#if !defined(CPU_FEATURES_ARCH_MIPS)
|
||||||
|
#error "Including cpuinfo_mips.h from a non-mips target."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // CPU_FEATURES_INCLUDE_CPUINFO_MIPS_H_
|
#endif // CPU_FEATURES_INCLUDE_CPUINFO_MIPS_H_
|
||||||
|
@ -138,4 +138,8 @@ const char* GetPPCFeaturesEnumName(PPCFeaturesEnum);
|
|||||||
|
|
||||||
CPU_FEATURES_END_CPP_NAMESPACE
|
CPU_FEATURES_END_CPP_NAMESPACE
|
||||||
|
|
||||||
|
#if !defined(CPU_FEATURES_ARCH_PPC)
|
||||||
|
#error "Including cpuinfo_ppc.h from a non-ppc target."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // CPU_FEATURES_INCLUDE_CPUINFO_PPC_H_
|
#endif // CPU_FEATURES_INCLUDE_CPUINFO_PPC_H_
|
||||||
|
@ -151,4 +151,8 @@ const char* GetX86MicroarchitectureName(X86Microarchitecture);
|
|||||||
|
|
||||||
CPU_FEATURES_END_CPP_NAMESPACE
|
CPU_FEATURES_END_CPP_NAMESPACE
|
||||||
|
|
||||||
|
#if !defined(CPU_FEATURES_ARCH_X86)
|
||||||
|
#error "Including cpuinfo_x86.h from a non-x86 target."
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // CPU_FEATURES_INCLUDE_CPUINFO_X86_H_
|
#endif // CPU_FEATURES_INCLUDE_CPUINFO_X86_H_
|
||||||
|
@ -17,11 +17,18 @@
|
|||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
#include "cpu_features_macros.h"
|
#include "cpu_features_macros.h"
|
||||||
#include "cpuinfo_aarch64.h"
|
|
||||||
#include "cpuinfo_arm.h"
|
#if defined(CPU_FEATURES_ARCH_X86)
|
||||||
#include "cpuinfo_mips.h"
|
|
||||||
#include "cpuinfo_ppc.h"
|
|
||||||
#include "cpuinfo_x86.h"
|
#include "cpuinfo_x86.h"
|
||||||
|
#elif defined(CPU_FEATURES_ARCH_ARM)
|
||||||
|
#include "cpuinfo_arm.h"
|
||||||
|
#elif defined(CPU_FEATURES_ARCH_AARCH64)
|
||||||
|
#include "cpuinfo_aarch64.h"
|
||||||
|
#elif defined(CPU_FEATURES_ARCH_MIPS)
|
||||||
|
#include "cpuinfo_mips.h"
|
||||||
|
#elif defined(CPU_FEATURES_ARCH_PPC)
|
||||||
|
#include "cpuinfo_ppc.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
static void PrintEscapedAscii(const char* str) {
|
static void PrintEscapedAscii(const char* str) {
|
||||||
putchar('"');
|
putchar('"');
|
||||||
|
@ -56,7 +56,7 @@ target_link_libraries(unix_features_aggregator_test all_libraries)
|
|||||||
add_test(NAME unix_features_aggregator_test COMMAND unix_features_aggregator_test)
|
add_test(NAME unix_features_aggregator_test COMMAND unix_features_aggregator_test)
|
||||||
##------------------------------------------------------------------------------
|
##------------------------------------------------------------------------------
|
||||||
## cpuinfo_x86_test
|
## cpuinfo_x86_test
|
||||||
if(CMAKE_SYSTEM_PROCESSOR STREQUAL "x86_64")
|
if(PROCESSOR_IS_X86)
|
||||||
add_executable(cpuinfo_x86_test cpuinfo_x86_test.cc ../src/cpuinfo_x86.c)
|
add_executable(cpuinfo_x86_test cpuinfo_x86_test.cc ../src/cpuinfo_x86.c)
|
||||||
target_compile_definitions(cpuinfo_x86_test PUBLIC CPU_FEATURES_MOCK_CPUID_X86)
|
target_compile_definitions(cpuinfo_x86_test PUBLIC CPU_FEATURES_MOCK_CPUID_X86)
|
||||||
target_link_libraries(cpuinfo_x86_test all_libraries)
|
target_link_libraries(cpuinfo_x86_test all_libraries)
|
||||||
@ -64,21 +64,29 @@ add_test(NAME cpuinfo_x86_test COMMAND cpuinfo_x86_test)
|
|||||||
endif()
|
endif()
|
||||||
##------------------------------------------------------------------------------
|
##------------------------------------------------------------------------------
|
||||||
## cpuinfo_arm_test
|
## cpuinfo_arm_test
|
||||||
|
if(PROCESSOR_IS_ARM)
|
||||||
add_executable(cpuinfo_arm_test cpuinfo_arm_test.cc ../src/cpuinfo_arm.c)
|
add_executable(cpuinfo_arm_test cpuinfo_arm_test.cc ../src/cpuinfo_arm.c)
|
||||||
target_link_libraries(cpuinfo_arm_test all_libraries)
|
target_link_libraries(cpuinfo_arm_test all_libraries)
|
||||||
add_test(NAME cpuinfo_arm_test COMMAND cpuinfo_arm_test)
|
add_test(NAME cpuinfo_arm_test COMMAND cpuinfo_arm_test)
|
||||||
|
endif()
|
||||||
##------------------------------------------------------------------------------
|
##------------------------------------------------------------------------------
|
||||||
## cpuinfo_aarch64_test
|
## cpuinfo_aarch64_test
|
||||||
|
if(PROCESSOR_IS_AARCH64)
|
||||||
add_executable(cpuinfo_aarch64_test cpuinfo_aarch64_test.cc ../src/cpuinfo_aarch64.c)
|
add_executable(cpuinfo_aarch64_test cpuinfo_aarch64_test.cc ../src/cpuinfo_aarch64.c)
|
||||||
target_link_libraries(cpuinfo_aarch64_test all_libraries)
|
target_link_libraries(cpuinfo_aarch64_test all_libraries)
|
||||||
add_test(NAME cpuinfo_aarch64_test COMMAND cpuinfo_aarch64_test)
|
add_test(NAME cpuinfo_aarch64_test COMMAND cpuinfo_aarch64_test)
|
||||||
|
endif()
|
||||||
##------------------------------------------------------------------------------
|
##------------------------------------------------------------------------------
|
||||||
## cpuinfo_mips_test
|
## cpuinfo_mips_test
|
||||||
|
if(PROCESSOR_IS_MIPS)
|
||||||
add_executable(cpuinfo_mips_test cpuinfo_mips_test.cc ../src/cpuinfo_mips.c)
|
add_executable(cpuinfo_mips_test cpuinfo_mips_test.cc ../src/cpuinfo_mips.c)
|
||||||
target_link_libraries(cpuinfo_mips_test all_libraries)
|
target_link_libraries(cpuinfo_mips_test all_libraries)
|
||||||
add_test(NAME cpuinfo_mips_test COMMAND cpuinfo_mips_test)
|
add_test(NAME cpuinfo_mips_test COMMAND cpuinfo_mips_test)
|
||||||
|
endif()
|
||||||
##------------------------------------------------------------------------------
|
##------------------------------------------------------------------------------
|
||||||
## cpuinfo_ppc_test
|
## cpuinfo_ppc_test
|
||||||
|
if(PROCESSOR_IS_POWER)
|
||||||
add_executable(cpuinfo_ppc_test cpuinfo_ppc_test.cc ../src/cpuinfo_ppc.c)
|
add_executable(cpuinfo_ppc_test cpuinfo_ppc_test.cc ../src/cpuinfo_ppc.c)
|
||||||
target_link_libraries(cpuinfo_ppc_test all_libraries)
|
target_link_libraries(cpuinfo_ppc_test all_libraries)
|
||||||
add_test(NAME cpuinfo_ppc_test COMMAND cpuinfo_ppc_test)
|
add_test(NAME cpuinfo_ppc_test COMMAND cpuinfo_ppc_test)
|
||||||
|
endif()
|
||||||
|
Loading…
x
Reference in New Issue
Block a user