]> gitweb.factorcode.org Git - factor.git/commitdiff
Fix io.launcher on Windows -- Microsoft does the same thing with devenv
authorDoug Coleman <doug.coleman@gmail.com>
Wed, 4 Feb 2009 19:05:52 +0000 (13:05 -0600)
committerDoug Coleman <doug.coleman@gmail.com>
Wed, 4 Feb 2009 19:05:52 +0000 (13:05 -0600)
Makefile
vm/Config.windows
vm/Config.windows.nt
vm/Config.windows.nt.x86.32
vm/Config.windows.nt.x86.64
vm/os-windows.c

index b41e75672960061aeb87d889bd9ec080997a4fc1..68c2c97426c3c62829bac63d5c5368d4fc174f4d 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -130,18 +130,20 @@ solaris-x86-64:
        $(MAKE) $(EXECUTABLE) CONFIG=vm/Config.solaris.x86.64
 
 freetype6.dll:
-       wget http://factorcode.org/dlls/freetype6.dll
+       wget $(DLL_PATH)/freetype6.dll
        chmod 755 freetype6.dll
 
 zlib1.dll:
-       wget http://factorcode.org/dlls/zlib1.dll
+       wget $(DLL_PATH)/zlib1.dll
        chmod 755 zlib1.dll
 
-winnt-x86-32: freetype6.dll zlib1.dll
+windows-dlls: freetype6.dll zlib1.dll
+
+winnt-x86-32: windows-dlls
        $(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.32
        $(MAKE) $(CONSOLE_EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.32
 
-winnt-x86-64:
+winnt-x86-64: windows-dlls
        $(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.64
        $(MAKE) $(CONSOLE_EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.64
 
@@ -167,7 +169,7 @@ factor: $(DLL_OBJS) $(EXE_OBJS)
 factor-console: $(DLL_OBJS) $(EXE_OBJS)
        $(LINKER) $(ENGINE) $(DLL_OBJS)
        $(CC) $(LIBS) $(LIBPATH) -L. $(LINK_WITH_ENGINE) \
-               $(CFLAGS) $(CFLAGS_CONSOLE) -o $@$(EXE_SUFFIX)$(EXE_EXTENSION) $(EXE_OBJS)
+               $(CFLAGS) $(CFLAGS_CONSOLE) -o factor$(EXE_SUFFIX)$(CONSOLE_EXTENSION) $(EXE_OBJS)
 
 clean:
        rm -f vm/*.o
index 41eca86b5cfa358993ff6d6428978e28fddec560..45d2f0cb98f4151657078409f2382b840d1b477f 100644 (file)
@@ -2,6 +2,7 @@ CFLAGS += -DWINDOWS -mno-cygwin
 LIBS = -lm
 PLAF_DLL_OBJS += vm/os-windows.o
 EXE_EXTENSION=.exe
+CONSOLE_EXTENSION=.com
 DLL_EXTENSION=.dll
 LINKER = $(CC) -shared -mno-cygwin -o 
 LINK_WITH_ENGINE = -l$(DLL_PREFIX)factor$(DLL_SUFFIX)
index de28ba64bad30c67020c3d6bbcd86992a5d62705..ffaa899fe1e35cd875d0e7a46ef7f88207de8d57 100644 (file)
@@ -6,4 +6,5 @@ PLAF_EXE_OBJS += vm/resources.o
 PLAF_EXE_OBJS += vm/main-windows-nt.o
 CFLAGS += -mwindows
 CFLAGS_CONSOLE += -mconsole
+CONSOLE_EXTENSION = .com
 include vm/Config.windows
index 9a020a7bc184e60ea2b3f2cc50d1d2503b8d34e0..d27629fe8358552f93499239c2f1cb63a70aca9b 100644 (file)
@@ -1,3 +1,4 @@
+DLL_PATH=http://factorcode.org/dlls
 WINDRES=windres
 include vm/Config.windows.nt
 include vm/Config.x86.32
index f0c0a068cb91b7662e02043d8954482fb42c6068..ddb61480e5cf8c340bf8a1708b0cda2fa259d5a4 100644 (file)
@@ -1,3 +1,4 @@
+DLL_PATH=http://factorcode.org/dlls/64
 CC=$(WIN64_PATH)-gcc.exe
 WINDRES=$(WIN64_PATH)-windres.exe
 include vm/Config.windows.nt
index c4d29ea57fb411f2d5b2b056610f251229a4a6a7..2abc04cb3b6e0df0ad317b7c7663b13787a153ac 100755 (executable)
@@ -109,17 +109,6 @@ const F_CHAR *default_image_path(void)
        snwprintf(temp_path, sizeof(temp_path)-1, L"%s.image", full_path); 
        temp_path[sizeof(temp_path) - 1] = 0;
 
-       if(!windows_stat(temp_path)) {
-               unsigned int len = wcslen(full_path);
-               F_CHAR magic[] = L"-console";
-               unsigned int magic_len = wcslen(magic);
-
-               if(!wcsncmp(full_path + len - magic_len, magic, MIN(len, magic_len)))
-                       full_path[len - magic_len] = 0;
-               snwprintf(temp_path, sizeof(temp_path)-1, L"%s.image", full_path); 
-               temp_path[sizeof(temp_path) - 1] = 0;
-       }
-
        return safe_strdup(temp_path);
 }