]> gitweb.factorcode.org Git - factor.git/commitdiff
Merge branch 'master' of factorcode.org:/git/factor
authorJoe Groff <arcata@gmail.com>
Wed, 28 Apr 2010 22:49:00 +0000 (15:49 -0700)
committerJoe Groff <arcata@gmail.com>
Wed, 28 Apr 2010 22:49:00 +0000 (15:49 -0700)
.gitignore
basis/classes/struct/struct-docs.factor
basis/io/sockets/sockets-docs.factor
build-support/factor.sh
extra/build-support/authors.txt [new file with mode: 0644]
extra/build-support/build-support-tests.factor [new file with mode: 0644]
extra/build-support/build-support.factor [new file with mode: 0644]
extra/build-support/platforms.txt [new file with mode: 0644]

index 3bc5a6ffdafb1a4f6338b8a7035ddb0ce31023b1..7bd42557b782763654fd403d087d6f832171b03d 100644 (file)
@@ -12,6 +12,7 @@ Factor/factor
 *.res
 *.RES
 *.image
+factor.image.fresh
 *.dylib
 factor
 factor.com
index 7dbfda1f4f878c28088d463eb327afac8d0c149d..68a4876f926cb9fd84449d15c8aef8595b966794 100644 (file)
@@ -35,7 +35,8 @@ HELP: STRUCT:
 { "Struct classes cannot have a superclass defined." }
 { "The slots of a struct must all have a type declared. The type must be a C type." } 
 { { $link read-only } " slots on structs are not enforced, though they may be declared." }
-} } ;
+}
+"Additionally, structs may use bit fields. A slot specifier may use the syntax " { $snippet "bits: n" } " to specify that the bit width of the slot is " { $snippet "n" } ". Bit width may be specified on signed or unsigned integer slots. The layout of bit fields is not guaranteed to match that of any particular C compiler." } ;
 
 HELP: S{
 { $syntax "S{ class slots... }" }
index 8cc6ef731dfbc6da8eb17d5dd8ef25b493108dd2..a41fc1e6c339be8c178d2592f1688c06dfff782f 100644 (file)
@@ -192,12 +192,13 @@ HELP: <datagram>
     }
 }
 { $notes
-    "To accept UDP/IP packets from any host, use an address specifier returned by the following code, where 1234 is the desired port number:"
-    { $code "f 1234 <inet> resolve-host" }
-    "To accept UDP/IP packets from the loopback interface only, use an address specifier returned by the following code, where 1234 is the desired port number:"
-    { $code "\"localhost\" 1234 <inet> resolve-host" }
+    "To accept UDP/IP packets from any host, use an address specifier where the host name is set to " { $link f } ":"
+    { $code "f 1234 <inet4> <datagram>" }
+    "To create a datagram socket bound to a randomly-assigned port, set the port number in the address specifier to 0, and then read the " { $snippet "addr" } " slot of the datagram instance to obtain the actual port number it is bound to:"
+    { $code "f 0 <inet4> <datagram>" }
+    "To accept UDP/IP packets from the loopback interface only, use an address specifier like the following:"
+    { $code "\"127.0.0.1\" 1234 <inet4> <datagram>s" }
     "Since " { $link resolve-host } " can return multiple address specifiers, your code must create a datagram socket for each one and co-ordinate packet sending accordingly."
-    "Datagrams are low-level binary ports that don't map onto streams, so the constructor does not use an encoding"
 }
 { $errors "Throws an error if the port is already in use, or if the OS forbids access." } ;
 
index bcc3e8f9661a8a39e412d52c469b4e4e6401d75f..d8b547d8d6b67bb1869d94695397db2c47ffb0da 100755 (executable)
@@ -25,7 +25,8 @@ test_program_installed() {
 
 exit_script() {
     if [[ $FIND_MAKE_TARGET -eq true ]] ; then
-        $ECHO $MAKE_TARGET;
+               # Must be echo not $ECHO
+        echo $MAKE_TARGET;
     fi
     exit $1
 }
diff --git a/extra/build-support/authors.txt b/extra/build-support/authors.txt
new file mode 100644 (file)
index 0000000..7c1b2f2
--- /dev/null
@@ -0,0 +1 @@
+Doug Coleman
diff --git a/extra/build-support/build-support-tests.factor b/extra/build-support/build-support-tests.factor
new file mode 100644 (file)
index 0000000..1f855d5
--- /dev/null
@@ -0,0 +1,6 @@
+! Copyright (C) 2010 Doug Coleman.
+! See http://factorcode.org/license.txt for BSD license.
+USING: build-support sequences tools.test ;
+IN: build-support.tests
+
+[ f ] [ factor.sh-make-target empty? ] unit-test
diff --git a/extra/build-support/build-support.factor b/extra/build-support/build-support.factor
new file mode 100644 (file)
index 0000000..177042e
--- /dev/null
@@ -0,0 +1,10 @@
+! Copyright (C) 2010 Doug Coleman.
+! See http://factorcode.org/license.txt for BSD license.
+USING: arrays io io.backend io.encodings.utf8 io.launcher ;
+IN: build-support
+
+CONSTANT: factor.sh-path "resource:build-support/factor.sh"
+
+: factor.sh-make-target ( -- string )
+    factor.sh-path normalize-path "make-target" 2array
+    utf8 [ readln ] with-process-reader ;
diff --git a/extra/build-support/platforms.txt b/extra/build-support/platforms.txt
new file mode 100644 (file)
index 0000000..509143d
--- /dev/null
@@ -0,0 +1 @@
+unix