2 cat > 'fibo-rtplib/Makefile.omk' <<EOF
4 fibo_SOURCES = fibofnc.c fiboseries.c
5 include_HEADERS = fibolib.h
9 cat > 'fibo-rtplib/fibofnc.c' <<EOF
23 return fibofnc (n - 1) + fibofnc (n - 2);
26 cat > 'fibo-rtplib/fiboseries.c' <<EOF
31 fiboseries (int **series, int n)
39 p = malloc (sizeof (int) * (n + 1));
45 for (i = 0; i <= n; i++) {
52 cat > 'fibo-rtplib/fibolib.h' <<EOF
60 int fiboseries (int **series, int n);
64 cat > 'config.target' <<EOF
67 WRENV = ~/opt/WindRiver/wrenv.sh
68 WRPACKAGE = vxworks-6.1
71 echo 'SUBDIRS = fibo-rtp fibo-rtplib #orte' > 'Makefile.omk'
73 cat > 'fibo-rtp/fiboprint.c' <<EOF
77 fiboprint (int *series, int n)
80 printf ("%d%c", *(series++), n >= 0 ? ' ' : '\n');
83 cat > 'fibo-rtp/Makefile.omk' <<EOF
85 fibo2_SOURCES = fibo2.c fiboprint.c
89 cat > 'fibo-rtp/fibo2.c' <<EOF
95 main (int argc, char *argv[])
103 n = strtol (argv[1], &p, 0);
104 if ((p == argv[1]) || *p) {
105 fprintf (stderr, "The \"%s\" string is not a number\n", argv[1]);
109 printf ("Input number: ");
113 res = fiboseries (&series, n);
115 fprintf (stderr, "fiboseries() failed for %d with code %d\n", n, res);
119 /* Incorrect use of the function without prototype!!! */
120 fiboprint (series, n);
122 printf ("fibocalls=%d\n", fibocalls);