diff --git a/.gitignore b/.gitignore index 897825c826..19ace1f500 100644 --- a/.gitignore +++ b/.gitignore @@ -15,5 +15,7 @@ factor .gdb_history *.*.marks .*.swp -reverse-complement-in.txt -reverse-complement-out.txt +temp +logs +work +misc/wordsize \ No newline at end of file diff --git a/Makefile b/Makefile index 9776027a59..60091d44ea 100755 --- a/Makefile +++ b/Makefile @@ -45,7 +45,10 @@ DLL_OBJS = $(PLAF_DLL_OBJS) \ EXE_OBJS = $(PLAF_EXE_OBJS) -default: +default: misc/wordsize + make `./misc/target` + +help: @echo "Run 'make' with one of the following parameters:" @echo "" @echo "freebsd-x86-32" @@ -158,6 +161,9 @@ factor: $(DLL_OBJS) $(EXE_OBJS) $(CC) $(LIBS) $(LIBPATH) -L. $(LINK_WITH_ENGINE) \ $(CFLAGS) -o $@$(EXE_SUFFIX)$(EXE_EXTENSION) $(EXE_OBJS) +misc/wordsize: misc/wordsize.c + gcc misc/wordsize.c -o misc/wordsize + clean: rm -f vm/*.o rm -f factor*.dll libfactor*.* diff --git a/core/io/files/files.factor b/core/io/files/files.factor index 1824a47867..108ace4393 100755 --- a/core/io/files/files.factor +++ b/core/io/files/files.factor @@ -154,3 +154,11 @@ M: pathname <=> [ pathname-string ] compare ; : with-file-appender ( path quot -- ) >r r> with-stream ; inline + +: temp-dir ( -- path ) + "temp" resource-path + dup exists? not + [ dup make-directory ] + when ; + +: temp-file ( name -- path ) temp-dir swap path+ ; \ No newline at end of file diff --git a/core/io/streams/c/c-tests.factor b/core/io/streams/c/c-tests.factor index 5ace929ceb..16b78c2192 100755 --- a/core/io/streams/c/c-tests.factor +++ b/core/io/streams/c/c-tests.factor @@ -2,9 +2,9 @@ USING: tools.test io.files io io.streams.c ; IN: temporary [ "hello world" ] [ - "test.txt" resource-path [ + "test.txt" temp-file [ "hello world" write ] with-file-writer - "test.txt" resource-path "rb" fopen contents + "test.txt" temp-file "rb" fopen contents ] unit-test diff --git a/cp_dir b/cp_dir deleted file mode 100755 index 76c8a8f03b..0000000000 --- a/cp_dir +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/sh - -echo $1 -mkdir -p "`dirname \"$2\"`" -cp "$1" "$2" diff --git a/extra/benchmark/mandel/mandel.factor b/extra/benchmark/mandel/mandel.factor index 230fb2f889..0da4785785 100755 --- a/extra/benchmark/mandel/mandel.factor +++ b/extra/benchmark/mandel/mandel.factor @@ -65,7 +65,7 @@ SYMBOL: cols ] with-scope ; : mandel-main ( -- ) - "mandel.ppm" resource-path + "mandel.ppm" temp-file [ mandel write ] with-file-writer ; MAIN: mandel-main diff --git a/extra/benchmark/raytracer/raytracer.factor b/extra/benchmark/raytracer/raytracer.factor index 8f2badc95f..ddfd0ed6dd 100644 --- a/extra/benchmark/raytracer/raytracer.factor +++ b/extra/benchmark/raytracer/raytracer.factor @@ -170,7 +170,7 @@ DEFER: create ( level c r -- scene ) ] "" make ; : raytracer-main - "raytracer.pnm" resource-path + "raytracer.pnm" temp-file [ run write ] with-file-writer ; MAIN: raytracer-main diff --git a/extra/benchmark/reverse-complement/reverse-complement.factor b/extra/benchmark/reverse-complement/reverse-complement.factor index 0771b756bf..cf4143d533 100755 --- a/extra/benchmark/reverse-complement/reverse-complement.factor +++ b/extra/benchmark/reverse-complement/reverse-complement.factor @@ -41,12 +41,10 @@ HINTS: do-line vector string ; ] with-disposal ; : reverse-complement-in - "extra/benchmark/reverse-complement/reverse-complement-in.txt" - resource-path ; + "reverse-complement-in.txt" temp-file ; : reverse-complement-out - "extra/benchmark/reverse-complement/reverse-complement-out.txt" - resource-path ; + "reverse-complement-out.txt" temp-file ; : reverse-complement-main ( -- ) reverse-complement-in diff --git a/extra/builder/util/util.factor b/extra/builder/util/util.factor index 0e68cdbc0e..3d699d4ba8 100644 --- a/extra/builder/util/util.factor +++ b/extra/builder/util/util.factor @@ -98,4 +98,10 @@ USING: bootstrap.image bootstrap.image.download io.streams.null ; : cat-n ( file n -- ) [ file-lines ] [ ] bi* maybe-tail* - [ print ] each ; \ No newline at end of file + [ print ] each ; + +! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! + +USE: prettyprint + +: to-file ( object file -- ) [ . ] with-file-writer ; \ No newline at end of file diff --git a/extra/io/unix/unix-tests.factor b/extra/io/unix/unix-tests.factor index 515077f22b..6eb0b78955 100755 --- a/extra/io/unix/unix-tests.factor +++ b/extra/io/unix/unix-tests.factor @@ -38,8 +38,8 @@ yield "unix-domain-datagram-test" resource-path delete-file ] ignore-errors -: server-addr "unix-domain-datagram-test" resource-path ; -: client-addr "unix-domain-datagram-test-2" resource-path ; +: server-addr "unix-domain-datagram-test" temp-file ; +: client-addr "unix-domain-datagram-test-2" temp-file ; [ [ @@ -112,7 +112,7 @@ client-addr "unix-domain-datagram-test-3" resource-path delete-file ] ignore-errors -"unix-domain-datagram-test-2" resource-path delete-file +"unix-domain-datagram-test-2" temp-file delete-file [ ] [ client-addr "d" set ] unit-test diff --git a/misc/target b/misc/target new file mode 100755 index 0000000000..e55032784b --- /dev/null +++ b/misc/target @@ -0,0 +1,17 @@ +#!/bin/bash + +if [ \( `uname -s` = Darwin \) -a \( `uname -p` = powerpc \) ] +then + echo macosx-ppc +elif [ `uname -s` = Darwin ] +then + echo macosx-x86-`./misc/wordsize` +elif [ \( `uname -s` = Linux \) -a \( `uname -m` = i686 \) ] +then + echo linux-x86-`./misc/wordsize` +elif [ \( `uname -o` = Cygwin \) -a \( `uname -m` = i686 \) ] +then + echo winnt-x86-`./misc/wordsize` +else + echo help +fi \ No newline at end of file diff --git a/misc/wordsize.c b/misc/wordsize.c new file mode 100644 index 0000000000..a0e7d0b9c0 --- /dev/null +++ b/misc/wordsize.c @@ -0,0 +1,8 @@ + +#include + +int main () +{ + printf("%d", 8*sizeof(void*)); + return 0; +}