summaryrefslogtreecommitdiffstats
path: root/posix-compliance/probe_rtems
diff options
context:
space:
mode:
authorJoel Sherrill <joel@rtems.org>2017-08-28 13:03:40 -0500
committerJoel Sherrill <joel@rtems.org>2017-10-12 20:25:13 -0500
commit2c3cf2166dd35152bb006d027476400be8759615 (patch)
treec9bde69e8015ae32d259a962694187d742a8ea0b /posix-compliance/probe_rtems
parent13a15f908d0296b0547cb6c5f198c18a6d309aee (diff)
downloadrtems-docs-2c3cf2166dd35152bb006d027476400be8759615.tar.bz2
New version of POSIX Compliance Guide
This is a replacement of the POSIX 1003.1 Compliance Guide. It will be generated from a .csv file. Updates #3177.
Diffstat (limited to 'posix-compliance/probe_rtems')
-rwxr-xr-xposix-compliance/probe_rtems49
1 files changed, 49 insertions, 0 deletions
diff --git a/posix-compliance/probe_rtems b/posix-compliance/probe_rtems
new file mode 100755
index 0000000..2ecbe7d
--- /dev/null
+++ b/posix-compliance/probe_rtems
@@ -0,0 +1,49 @@
+#! /bin/bash
+
+lfile=unprobed_methods.txt
+cpu=arm
+bsp=xilinx_zynq_a9_qemu
+bsp_path=/home/joel/rtems-work/tools/4.12/bsps/arm-rtems4.12
+bsp_flags="-march=armv7-a -mthumb -mfpu=neon -mfloat-abi=hard -mtune=cortex-a9"
+
+cat_template()
+{
+cat <<EOF
+void @METHOD@(void);
+
+int main(int argc, char **argv)
+{
+ @METHOD@();
+ return 0;
+}
+EOF
+}
+
+gen_prober()
+{
+ method=$1
+ mname=`echo ${method} | sed -e 's/[()]//g'`
+ cat_template | sed -e "s/@METHOD@/${mname}/g"
+}
+
+cat ${lfile} | while read method
+do
+ grep ${method} probe_misses.txt >/dev/null
+ if [ $? -eq 0 ] ; then
+ echo "${method},HAND-YES"
+ continue
+ fi
+
+ gen_prober ${method} >tmp_probe.c
+ ${cpu}-rtems4.12-gcc \
+ -B${bsp_path}/${bsp}/lib/ -specs bsp_specs -qrtems \
+ ${bsp_flags} \
+ tmp_probe.c >/dev/null 2>&1
+ if [ $? -eq 0 ] ; then
+ echo "${method},RT-YES"
+ continue
+ fi
+ echo "${method},RT-NO"
+done
+
+# rm -f tmp_probe.c a.out