diff options
-rw-r--r-- | Makefile.in | 4 | ||||
-rw-r--r-- | auto.def | 14 | ||||
-rw-r--r-- | autosetup/cc-shared.tcl | 2 | ||||
-rw-r--r-- | jim-sdl.c | 4 |
4 files changed, 17 insertions, 7 deletions
diff --git a/Makefile.in b/Makefile.in index b22c46b..c8b740e 100644 --- a/Makefile.in +++ b/Makefile.in @@ -165,6 +165,10 @@ mk.so: jim-mk.cpp $(CXX) $(CXXFLAGS) $(SHOBJ_CFLAGS) -c -o jim-mk.o $> $^ $(CXX) $(CXXFLAGS) $(LDFLAGS) $(SHOBJ_LDFLAGS) -o $@ jim-mk.o $(SH_LIBJIM) @LDLIBS_mk@ +sdl.so: jim-sdl.c + $(CC) $(CFLAGS) $(SHOBJ_CFLAGS) -c -o jim-sdl.o $> $^ + $(CC) $(CFLAGS) $(LDFLAGS) $(SHOBJ_LDFLAGS) -o $@ jim-sdl.o $(SH_LIBJIM) @LDLIBS_sdl@ + Tcl.html: jim_tcl.txt @tclsh@ @srcdir@/make-index $> $^ | asciidoc -o $@ -d manpage - || cp @srcdir@/Tcl_shipped.html Tcl.html @@ -204,7 +204,7 @@ set withmod [join [opt-val {with-mod with-jim-extmod}]] # Tcl extensions set ext_tcl "stdlib glob tclcompat tree rlprompt oo binary" # Native extensions -set ext_c "load package readdir array clock exec file posix regexp signal aio eventloop pack syslog nvp readline mk sqlite sqlite3 win32" +set ext_c "load package readdir array clock exec file posix regexp signal aio eventloop pack syslog nvp readline mk sqlite sqlite3 win32 sdl" # C++ extensions set ext_cxx "mk" @@ -212,7 +212,7 @@ set ext_cxx "mk" # Tcl extensions which can be modules set ext_tcl_mod "glob tree rlprompt oo binary" # Native extensions which can be modules -set ext_c_mod "readdir array clock file posix regexp syslog readline pack mk sqlite sqlite3 win32" +set ext_c_mod "readdir array clock file posix regexp syslog readline pack mk sqlite sqlite3 win32 sdl" # All extensions set ext_all [concat $ext_c $ext_tcl] @@ -259,6 +259,8 @@ set needs(sqlite3) {cc-check-function-in-lib sqlite3_open sqlite3} set libdep(sqlite3) lib_sqlite3_open set needs(syslog) {have-feature syslog} set needs(win32) {have-feature windows} +set needs(sdl) {expr {[cc-check-function-in-lib SDL_SetVideoMode SDL] && [cc-check-function-in-lib rectangleRGBA SDL_gfx]}} +set libdep(sdl) {lib_SDL_SetVideoMode lib_rectangleRGBA} # First handle dependencies. If an extension is enabled, also enable its dependency foreach i [concat $ext_default $withext] { @@ -333,7 +335,9 @@ foreach i [lsort $ext_all] { msg-result "module" lappend extmod $i if {[info exists libdep($i)]} { - define-append LDLIBS_$i [get-define $libdep($i) ""] + foreach j $libdep($i) { + define-append LDLIBS_$i [get-define $j ""] + } } continue } @@ -356,7 +360,9 @@ foreach i [lsort $ext_all] { lappend ext $i if {[info exists libdep($i)]} { - define-append LDLIBS [get-define $libdep($i) ""] + foreach j $libdep($i) { + define-append LDLIBS [get-define $j ""] + } } } diff --git a/autosetup/cc-shared.tcl b/autosetup/cc-shared.tcl index b59816c..1e77440 100644 --- a/autosetup/cc-shared.tcl +++ b/autosetup/cc-shared.tcl @@ -58,6 +58,6 @@ switch -glob -- [get-define host] { define SH_CFLAGS -fpic define SH_LDFLAGS -shared define SHOBJ_CFLAGS -fpic - define SHOBJ_LDFLAGS "-shared -nostartfiles" + define SHOBJ_LDFLAGS "-shared" } } @@ -22,8 +22,8 @@ #include <stdlib.h> #include <string.h> #include <errno.h> -#include <SDL.h> -#include <SDL_gfxPrimitives.h> +#include <SDL/SDL.h> +#include <SDL/SDL_gfxPrimitives.h> #include "jim.h" #include "jimautoconf.h" |