diff options
Diffstat (limited to 'otherlibs/labltk/browser')
-rw-r--r-- | otherlibs/labltk/browser/Makefile.nt | 30 | ||||
-rw-r--r-- | otherlibs/labltk/browser/winmain.c | 12 |
2 files changed, 27 insertions, 15 deletions
diff --git a/otherlibs/labltk/browser/Makefile.nt b/otherlibs/labltk/browser/Makefile.nt index 43b3828b2..729acb710 100644 --- a/otherlibs/labltk/browser/Makefile.nt +++ b/otherlibs/labltk/browser/Makefile.nt @@ -1,12 +1,18 @@ -!include ..\support\Makefile.common.nt +include ../support/Makefile.common.nt LABLTKLIB=-I ../labltk -I ../lib -I ../support OTHERSLIB=-I $(OTHERS)/win32unix -I $(OTHERS)/str -I $(OTHERS)/systhreads OCAMLTOPLIB=-I $(TOPDIR)/parsing -I $(TOPDIR)/utils -I $(TOPDIR)/typing INCLUDES=$(OTHERSLIB) $(LABLTKLIB) $(OCAMLTOPLIB) -CCFLAGS=-I..\..\..\byterun /Zi $(TK_DEFS) +CCFLAGS=-I../../../byterun $(TK_DEFS) -OBJ = list2.cmo useunix.cmo setpath.cmo lexical.cmo \ +ifeq ($(CCOMPTYPE),cc) +WINDOWS_APP= +else +WINDOWS_APP=-cclib "/link /subsystem:windows" +endif + +OBJS = list2.cmo useunix.cmo setpath.cmo lexical.cmo \ fileselect.cmo searchid.cmo searchpos.cmo shell.cmo \ help.cmo \ viewer.cmo typecheck.cmo editor.cmo main.cmo @@ -18,7 +24,7 @@ JG = jg_tk.cmo jg_config.cmo jg_bind.cmo jg_completion.cmo \ # Default rules -.SUFFIXES: .ml .mli .cmo .cmi .cmx +.SUFFIXES: .ml .mli .cmo .cmi .cmx .c .$(O) .ml.cmo: $(CAMLCOMP) $(INCLUDES) $< @@ -26,27 +32,27 @@ JG = jg_tk.cmo jg_config.cmo jg_bind.cmo jg_completion.cmo \ .mli.cmi: $(CAMLCOMP) $(INCLUDES) $< -y.c.obj: +.c.$(O): $(BYTECC) $(BYTECCCOMPOPTS) $(CCFLAGS) -c $< all: ocamlbrowser.exe ocamlbrowser.exe: $(TOPDIR)/toplevel/toplevellib.cma \ - ..\support\lib$(LIBNAME).lib -ocamlbrowser.exe: jglib.cma $(OBJ) winmain.obj + ../support/lib$(LIBNAME).$(A) +ocamlbrowser.exe: jglib.cma $(OBJS) winmain.$(O) $(CAMLC) -o ocamlbrowser.exe -custom $(INCLUDES) \ $(TOPDIR)/toplevel/toplevellib.cma \ - unix.cma threads.cma str.cma $(LIBNAME).cma jglib.cma $(OBJ) \ - winmain.obj -cclib "/subsystem:windows" + unix.cma threads.cma str.cma $(LIBNAME).cma jglib.cma $(OBJS) \ + winmain.$(O) $(WINDOWS_APP) jglib.cma: $(JG) $(CAMLCOMP) -a -o jglib.cma $(JG) install: - if exist ocamlbrowser.exe cp ocamlbrowser.exe $(BINDIR) + if test -f ocamlbrowser.exe; then cp ocamlbrowser.exe $(BINDIR); fi clean: - rm -f *.cm? ocamlbrowser.exe dummy.mli *~ *.orig *.obj *.pdb + rm -f *.cm? ocamlbrowser.exe dummy.mli *~ *.orig *.$(O) depend: $(CAMLDEP) *.ml *.mli > .depend @@ -55,4 +61,4 @@ dummy.mli: cp dummyWin.mli dummy.mli shell.cmo: dummy.cmi -!include .depend +include .depend diff --git a/otherlibs/labltk/browser/winmain.c b/otherlibs/labltk/browser/winmain.c index 6805ecfcd..d36f6786f 100644 --- a/otherlibs/labltk/browser/winmain.c +++ b/otherlibs/labltk/browser/winmain.c @@ -1,12 +1,18 @@ -#include <callback.h> #include <windows.h> +#include <mlvalues.h> +#include <callback.h> +#include <sys.h> + extern int __argc; extern char **__argv; -extern void expand_command_line (int *, char ***); +extern void expand_command_line(int * argcp, char *** argvp); extern void caml_main (char **); int WINAPI WinMain(HINSTANCE h, HINSTANCE HPrevInstance, LPSTR lpCmdLine, int nCmdShow) { - return main(__argc, __argv); + expand_command_line(&__argc, &__argv); + caml_main(__argv); + sys_exit(Val_int(0)); + return 0; } |