]> foleosoft.com Git - QAnsel.git/commitdiff
Mon Mar 18 08:14:53 PM EDT 2024
authormiha-q <>
Tue, 19 Mar 2024 00:14:53 +0000 (20:14 -0400)
committermiha-q <>
Tue, 19 Mar 2024 00:14:53 +0000 (20:14 -0400)
Makefile
build.sh [new file with mode: 0644]
src/hardware.c

index 1aaf3ad6f2028659a032d19eae0a6a6424b1a3a7..4eb3bd85d50191c7a0d7158838099baecb266c0e 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -1,36 +1,8 @@
-
 all:
-       cat src/kernel.cl | grep -vi '{gpu_only}' | sed -e 's/__global //' -e 's/__kernel //' > src/kernel_cpu.cl
-       cat src/kernel.cl | grep -vi '{cpu_only}' > src/.kernel.tmp.1
-       bash -c 'echo -ne "$$(cat src/.kernel.tmp.1)\x00" > src/.kernel.tmp.2'
-       xxd -i src/.kernel.tmp.2 | sed -e 's/src__kernel_tmp_2/kernel_gpu/' > src/kernel_gpu.cl
-       gcc src/main.c -g -o bin/QAnsel -lm -D__SDL2__ -D__OPENCL__ -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread
-       rm -f src/.kernel* src/kernel_*
+       sh build.sh all
 
 simple:
-       cat src/kernel.cl | grep -vi '{gpu_only}' | sed -e 's/__global //' -e 's/__kernel //' > src/kernel_cpu.cl
-       cat src/kernel.cl | grep -vi '{cpu_only}' > src/.kernel.tmp.1
-       bash -c 'echo -ne "$$(cat src/.kernel.tmp.1)\x00" > src/.kernel.tmp.2'
-       xxd -i src/.kernel.tmp.2 | sed -e 's/src__kernel_tmp_2/kernel_gpu/' > src/kernel_gpu.cl
-       gcc src/main.c -g -o bin/QAnsel -lm -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread
-       rm -f src/.kernel* src/kernel_*
-
-metal:
-       cat src/kernel.cl | grep -vi '{gpu_only}' | sed -e 's/__global //' -e 's/__kernel //' > src/kernel_cpu.cl
-       cat src/kernel.cl | grep -vi '{cpu_only}' > src/.kernel.tmp.1
-       bash -c 'echo -ne "$$(cat src/.kernel.tmp.1)\x00" > src/.kernel.tmp.2'
-       xxd -i src/.kernel.tmp.2 | sed -e 's/src__kernel_tmp_2/kernel_gpu/' > src/kernel_gpu.cl
-       gcc src/main.c -g -o bin/QAnsel -lm -D__SDL2__ -D__OPENCL__ -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread
-       rm -f src/.kernel* src/kernel_*
-
-metal:
-       cat src/kernel.cl | grep -vi '{gpu_only}' | sed -e 's/__global //' -e 's/__kernel //' > src/kernel_cpu.cl
-       cat src/kernel.cl | grep -vi '{cpu_only}' > src/.kernel.tmp.1
-       bash -c 'echo -ne "$$(cat src/.kernel.tmp.1)\x00" > src/.kernel.tmp.2'
-       xxd -i src/.kernel.tmp.2 | sed -e 's/src__kernel_tmp_2/kernel_gpu/' > src/kernel_gpu.cl
-       gcc src/main.c -g -o bin/QAnsel -lm -D__SDL2__ -D__OPENCL__ -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread
-       rm -f src/.kernel* src/kernel_*
-
+       sh build.sh simple
 
 commit:
        git add src/ examples/ Makefile
diff --git a/build.sh b/build.sh
new file mode 100644 (file)
index 0000000..dd1c31d
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+echo "$1"
+
+echo "Verifying build commands exist..."
+for i in cat grep sed xxd gcc rm printf
+do
+       if ! which $i
+       then
+               echo "Could not locate $i."
+               exit
+       fi
+done
+echo "Verified."
+echo "Building..."
+cat src/kernel.cl | grep -vi '{gpu_only}' | sed -e 's/__global //' -e 's/__kernel //' > src/kernel_cpu.cl
+cat src/kernel.cl | grep -vi '{cpu_only}' > src/.kernel.tmp.1
+tmp="$(cat src/.kernel.tmp.1)"
+printf "%s\0" "$tmp" > src/.kernel.tmp.2
+xxd -i src/.kernel.tmp.2 | sed -e 's/src__kernel_tmp_2/kernel_gpu/' > src/kernel_gpu.cl
+if [ "$1" = "simple" ]
+then
+       gcc src/main.c -g -o bin/QAnsel -lm -D__SDL2__ -D__OPENCL__ -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread 
+else
+       gcc src/main.c -g -o bin/QAnsel -lm -I/usr/include/SDL2 -D_REENTRANT -lSDL2 -lOpenCL -pthread 
+fi
+rm -f src/.kernel* src/kernel_*
+echo "Built."
\ No newline at end of file
index 89c1d5408e948b53ecd964587846771914079b2a..5a60e6b3ed4d419006b9553b4358e705f3c03d11 100644 (file)
@@ -52,7 +52,7 @@ unsigned long int qansel_get_time()
 
 int qansel_hardware_rand_supported()
 {
-    #if defined(__x86_64__) || defined(__i386__)
+    #ifdef __x86_64__
     int result = 0;
 
     //Check for RDSEED