Create two binaries: factor.com and factor.exe. factor.com is the console version, factor.exe is win32. also make a factor shell script called factor to help cygwin out because it ignores the env vars
parent
0c6fd1b6dc
commit
2d960f4103
13
Makefile
13
Makefile
|
@ -3,6 +3,7 @@ AR = ar
|
|||
LD = ld
|
||||
|
||||
EXECUTABLE = factor
|
||||
CONSOLE_EXECUTABLE = factor_console
|
||||
VERSION = 0.92
|
||||
|
||||
IMAGE = factor.image
|
||||
|
@ -138,9 +139,16 @@ zlib1.dll:
|
|||
|
||||
winnt-x86-32: freetype6.dll zlib1.dll
|
||||
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.32
|
||||
$(MAKE) $(CONSOLE_EXECUTABLE) $(CFLAGS_CONSOLE) CONFIG=vm/Config.windows.nt.x86.32
|
||||
$(MAKE) winnt-finish
|
||||
|
||||
winnt-x86-64:
|
||||
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.nt.x86.64
|
||||
$(MAKE) $(CONSOLE_EXECUTABLE) $(CFLAGS_CONSOLE) CONFIG=vm/Config.windows.nt.x86.64
|
||||
$(MAKE) winnt-finish
|
||||
|
||||
winnt-finish:
|
||||
cp misc/factor-cygwin.sh factor
|
||||
|
||||
wince-arm:
|
||||
$(MAKE) $(EXECUTABLE) CONFIG=vm/Config.windows.ce.arm
|
||||
|
@ -161,6 +169,11 @@ factor: $(DLL_OBJS) $(EXE_OBJS)
|
|||
$(CC) $(LIBS) $(LIBPATH) -L. $(LINK_WITH_ENGINE) \
|
||||
$(CFLAGS) -o $@$(EXE_SUFFIX)$(EXE_EXTENSION) $(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)$(CONSOLE_EXE_EXTENSION) $(EXE_OBJS)
|
||||
|
||||
clean:
|
||||
rm -f vm/*.o
|
||||
rm -f factor*.dll libfactor.{a,so,dylib}
|
||||
|
|
|
@ -2,6 +2,7 @@ CFLAGS += -DWINDOWS -mno-cygwin
|
|||
LIBS = -lm
|
||||
PLAF_DLL_OBJS += vm/os-windows.o
|
||||
EXE_EXTENSION=.exe
|
||||
CONSOLE_EXE_EXTENSION=.com
|
||||
DLL_EXTENSION=.dll
|
||||
LINKER = $(CC) -shared -mno-cygwin -o
|
||||
LINK_WITH_ENGINE = -l$(DLL_PREFIX)factor$(DLL_SUFFIX)
|
||||
|
|
|
@ -4,5 +4,6 @@ DLL_SUFFIX=
|
|||
PLAF_DLL_OBJS += vm/os-windows-nt.o
|
||||
PLAF_EXE_OBJS += vm/resources.o
|
||||
PLAF_EXE_OBJS += vm/main-windows-nt.o
|
||||
#CFLAGS += -mwindows
|
||||
CFLAGS += -mwindows
|
||||
CFLAGS_CONSOLE += -mconsole
|
||||
include vm/Config.windows
|
||||
|
|
|
@ -120,9 +120,6 @@ void init_factor(F_PARAMETERS *p)
|
|||
init_c_io();
|
||||
init_signals();
|
||||
|
||||
if(p->console)
|
||||
open_console();
|
||||
|
||||
stack_chain = NULL;
|
||||
profiling_p = false;
|
||||
performing_gc = false;
|
||||
|
|
|
@ -54,14 +54,4 @@ void c_to_factor_toplevel(CELL quot)
|
|||
|
||||
void open_console(void)
|
||||
{
|
||||
/*
|
||||
// Do this: http://www.cygwin.com/ml/cygwin/2007-11/msg00432.html
|
||||
if(console_open)
|
||||
return;
|
||||
|
||||
if(AttachConsole(ATTACH_PARENT_PROCESS) || AllocConsole())
|
||||
{
|
||||
console_open = true;
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
|
|
@ -18,5 +18,4 @@ typedef char F_SYMBOL;
|
|||
|
||||
void c_to_factor_toplevel(CELL quot);
|
||||
long exception_handler(PEXCEPTION_POINTERS pe);
|
||||
bool console_open;
|
||||
void open_console(void);
|
||||
|
|
Loading…
Reference in New Issue