Import LinuxCNC source tree

This commit is contained in:
Wang Dequan
2026-08-20 06:17:39 +08:00
commit 2c814634c3
9429 changed files with 10556013 additions and 0 deletions

View File

@@ -0,0 +1,2 @@
*.result
userspace_count_names

View File

@@ -0,0 +1,2 @@
loadusr -W userspace_count_names count=3 names=no,way
list pin

View File

@@ -0,0 +1,9 @@
#!/bin/sh
cd "$(dirname "$1")" || { echo "E: Could not change directory to '$(dirname "$1")'"; exit 1; }
RETVAL=0
for EXPECTED in *.expected ; do
BASE=$(basename "$EXPECTED" .expected)
RESULT=$BASE.result
diff -u "$EXPECTED" "$RESULT" || RETVAL=1
done
exit $RETVAL

View File

@@ -0,0 +1,26 @@
count=2
argc=2
argv[0]=userspace_count_names
argv[1]=zip
argv[2]=(null)
userspace-count-names.0.out
userspace-count-names.1.out
count=2
argc=3
argv[0]=userspace_count_names
argv[1]=zip
argv[2]=zap
argv[3]=(null)
userspace-count-names.0.out
userspace-count-names.1.out
count=2
argc=3
argv[0]=userspace_count_names
argv[1]=zap
argv[2]=zoot
argv[3]=(null)
userspace-count-names.0.out
userspace-count-names.1.out

View File

@@ -0,0 +1,15 @@
loadusr -W userspace_count_names count=2 zip
list pin
unloadusr userspace_count_names
waitusr userspace_count_names
loadusr -W userspace_count_names zip count=2 zap
list pin
unloadusr userspace_count_names
waitusr userspace_count_names
loadusr -W userspace_count_names zap zoot count=2
list pin
unloadusr userspace_count_names
waitusr userspace_count_names

View File

@@ -0,0 +1,8 @@
count=3
argc=1
argv[0]=userspace_count_names
argv[1]=(null)
userspace-count-names.0.out
userspace-count-names.1.out
userspace-count-names.2.out

View File

@@ -0,0 +1,2 @@
loadusr -W userspace_count_names count=3
list pin

View File

@@ -0,0 +1,33 @@
count=0
names[0]=swim
names[1]=swish
argc=3
argv[0]=userspace_count_names
argv[1]=slap
argv[2]=slop
argv[3]=(null)
swim.out
swish.out
count=0
names[0]=swat
names[1]=swap
argc=4
argv[0]=userspace_count_names
argv[1]=slam
argv[2]=slalom
argv[3]=slap
argv[4]=(null)
swap.out
swat.out
count=0
names[0]=sock
names[1]=slack
argc=2
argv[0]=userspace_count_names
argv[1]=slip
argv[2]=(null)
slack.out
sock.out

View File

@@ -0,0 +1,15 @@
loadusr -W userspace_count_names names=swim,swish slap slop
list pin
unloadusr userspace_count_names
waitusr userspace_count_names
loadusr -W userspace_count_names slam slalom names=swat,swap slap
list pin
unloadusr userspace_count_names
waitusr userspace_count_names
loadusr -W userspace_count_names slip names=sock,slack
list pin
unloadusr userspace_count_names
waitusr userspace_count_names

View File

@@ -0,0 +1,9 @@
count=0
names[0]=bibble
names[1]=bobble
argc=1
argv[0]=userspace_count_names
argv[1]=(null)
bibble.out
bobble.out

View File

@@ -0,0 +1,2 @@
loadusr -W userspace_count_names names=bibble,bobble
list pin

View File

@@ -0,0 +1,6 @@
count=0
argc=1
argv[0]=userspace_count_names
argv[1]=(null)
userspace-count-names.0.out

View File

@@ -0,0 +1,2 @@
loadusr -W userspace_count_names
list pin

View File

@@ -0,0 +1,23 @@
#!/bin/bash
set -e
${SUDO} halcompile --install userspace_count_names.comp
INSTALLED_FILE="${EMC2_HOME}/bin/userspace_count_names"
if [[ ! -f "${INSTALLED_FILE}" ]]; then
echo "'halcompile --install' did not install '${INSTALLED_FILE}'"
exit 1
fi
MODE=$(stat --printf '%#03a\n' "${INSTALLED_FILE}")
if [[ $((MODE & 0111)) == '0' ]]; then
echo "installed file '${INSTALLED_FILE}' has incorrect permissions"
echo "expected *some* execute bit, got ${MODE}"
exit 1
fi
for HAL in *.hal; do
echo "testing $HAL"
BASE=$(basename "$HAL" .hal)
halrun "$HAL" | tr ' ' '\n' >| "$BASE".result
done

View File

@@ -0,0 +1,35 @@
component userspace_count_names;
option userspace;
option userinit;
pin out signed out = 42;
license "GPL";
;;
#include <unistd.h>
#include <signal.h>
#include <stdio.h>
void exit_handler(int signo) {
;
}
void userinit(int argc, char **argv) {
int i;
printf("count=%d\n", count);
for (i = 0; i < 16; i ++) {
if (names[i] != NULL) {
printf("names[%d]=%s\n", i, names[i]);
}
}
printf("argc=%d\n", argc);
for (i = 0; i <= argc; i ++) {
printf("argv[%d]=%s\n", i, argv[i]);
}
signal(SIGTERM, exit_handler);
fflush(NULL);
}
void user_mainloop(void) {
pause();
}