Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
Please login to access the resource
home:Andreas_Schwab:Factory
bulk_extractor
cpuid-check.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File cpuid-check.patch of Package bulk_extractor
From 054ff3b4c82c028446839660335df44cd6c9ab0b Mon Sep 17 00:00:00 2001 From: Jason Solomon <jxs@google.com> Date: Tue, 24 May 2022 15:43:25 +1000 Subject: [PATCH] Fix detection of x86 cpuid instruction --- src/dfxml_configure.m4 | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/be20_api/dfxml_cpp/src/dfxml_configure.m4 b/src/be20_api/dfxml_cpp/src/dfxml_configure.m4 index e60b397..f90737f 100644 --- a/src/be20_api/dfxml_cpp/src/dfxml_configure.m4 +++ b/src/be20_api/dfxml_cpp/src/dfxml_configure.m4 @@ -33,7 +33,19 @@ AM_COND_IF([FOUND_GIT], [AC_MSG_WARN([git not found])]) # Do we have the CPUID instruction? -AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#define cpuid(id) __asm__( "cpuid" : "=a"(eax), "=b"(ebx), "=c"(ecx), "=d"(edx) : "a"(id), "b"(0), "c"(0), "d"(0))]], [[unsigned long eax, ebx, ecx, edx;cpuid(0);]])],[have_cpuid=yes],[have_cpuid=no]) +# Based on https://www.gnu.org/software/autoconf-archive/ax_gcc_x86_cpuid.html +AC_RUN_IFELSE([AC_LANG_PROGRAM([int eax, ebx, ecx, edx;], [ + __asm__ __volatile__ ("xchg %%ebx, %1\n" + "cpuid\n" + "xchg %%ebx, %1\n" + : "=a" (eax), "=r" (ebx), "=c" (ecx), "=d" (edx) + : "a" (0), "2" (0)); + return 0; +])], +[have_cpuid=yes], +[have_cpuid=no], +[have_cpuid=no]) +AC_MSG_NOTICE([have_cpuid: $have_cpuid]) if test "$have_cpuid" = yes; then AC_DEFINE(HAVE_ASM_CPUID, 1, [define to 1 if __asm__ CPUID is available]) fi -- 2.41.0
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor