# # The contents of this file are subject to the Mozilla Public # License Version 1.1 (the "License"); you may not use this file # except in compliance with the License. You may obtain a copy of # the License at http://www.mozilla.org/MPL/ # # Software distributed under the License is distributed on an "AS # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or # implied. See the License for the specific language governing # rights and limitations under the License. # # The Original Code is The Waterfall Java Plugin Module # # The Initial Developer of the Original Code is Sun Microsystems Inc # Portions created by Sun Microsystems Inc are Copyright (C) 2001 # All Rights Reserved. # # $Id: makefile.win,v 1.2 2001-07-12 19:57:43 edburns%acm.org Exp $ # # Contributor(s): # # Nikolay N. Igotti # BUILDDIR=. ROOTDIR=..\.. CC=cl CXX=cl CP=copy DEL=del/f/q DELTREE=del/S/Q/F MKDIR=mkdir ZIP=zip LD = link MAKE=nmake -nologo # type of really used JVM # values: _JVMP_IBMJVM, _JVMP_SUNJVM #JVMTYPE = _JVMP_IBMJVM JVMTYPE = _JVMP_SUNJVM # kind of JVM: classic, hotspot JVMKIND = hotspot #JVMKIND = classic THREADTYPE = _JVMP_WIN32THREADS ARCH=win32 CCDEBUG = -MDd -Zi -Od #CCDEBUG = INCLUDES = -I$(ROOTDIR)\include -I..\..\public -I..\..\public\$(ARCH) -I$(WFJDKHOME)\include -I$(WFJDKHOME)\include\$(ARCH) # XXX: hardcoded platform EXTRA_CFLAGS = $(CCDEBUG) -D$(JVMTYPE) -D$(THREADTYPE) -DXP_WIN32 -DARCH="\"win32\"" -DWIN32 -DJVMKIND="\"$(JVMKIND)\"" -DPLATFORM="\"i386\"" CFLAGS = -nologo -DWIN32 $(PICFLAGS) $(EXTRA_CFLAGS) $(INCLUDES) -WX CXXFLAGS = $(CFLAGS) -I$(HOSTINCPATH) -I$(HOSTINCPATH)\glib -I$(HOSTINCPATH)\gdk -DXP_WIN32 LIBFLAGS = -nologo -debug -incremental:NO PLUGINCSRCDIR = ..\..\src\plugin PLUGINMDDIR = ..\..\src\plugin\win32 PLUGINCSRCS = java_plugin.c jpthreads.c # source of native methods for Plugin PLUGINNATIVESRC = native.c PLUGIN_DLL = jvmp.dll # well, just a hack PLUGIN_NATIVE_DLL=JVMPnatives.dll # source of Mozilla-dependent module - should be separated MOZEXTSRCDIR = ..\..\src\plugin\mozilla MOZEXTCSRC = wfe_mozilla.c wfm6_native.c MOZEXT_DLL = wf_moz6.dll TESTEXTSRCDIR = ..\..\src\host TESTEXTCSRC = test_extension.c TESTEXT_DLL = wf_test.dll HOSTCPPSRCDIR = ..\..\src\host HOSTCPPSRCS = host.cpp HOSTPROG=plugin_host.exe PLUGINOBJS=$(PLUGINCSRCS:.c=.obj) PLUGIN_NATIVE_OBJS=$(PLUGINNATIVESRC:.c=.obj) HOSTOBJS=$(HOSTCPPSRCS:.cpp=.obj) MOZEXTOBJS = $(MOZEXTCSRC:.c=.obj) NCEXTOBJS = $(NCEXTCSRC:.c=.obj) TESTEXTOBJS=$(TESTEXTCSRC:.c=.obj) OBJDIR = INSTALLER = installer.exe INSTSRCDIR = ..\..\src\plugin\win32 INSTSRC = installer.c INSTOBJS = $(INSTSRC:.c=.obj) PLUGINLIBS=user32.lib INSTLIBS=user32.lib HOSTLIBS=$(HOSTLIBPATH)\glib-1.3.lib $(HOSTLIBPATH)\gtk-1.3.lib $(HOSTLIBPATH)\gdk-1.3.lib #instead of vpath {$(PLUGINCSRCDIR)}.c{$(OBJDIR)}.obj: @$(CC) $(CFLAGS) -D_JVMP_IMPLEMENTATION -c -Fo$@ $< {$(PLUGINMDDIR)}.c{$(OBJDIR)}.obj: @$(CC) $(CFLAGS) -D_JVMP_IMPLEMENTATION -c -Fo$@ $< {$(HOSTCPPSRCDIR)}.cpp{$(OBJDIR)}.obj: @$(CXX) $(CXXFLAGS) -c -Fo$@ $< {$(MOZEXTSRCDIR)}.c{$(OBJDIR)}.obj: @$(CC) $(CFLAGS) -c -Fo$@ $< {$(TESTEXTSRCDIR)}.c{$(OBJDIR)}.obj: @$(CC) $(CFLAGS) -c -Fo$@ $< {$(INSTSRCDIR)}.c{$(OBJDIR)}.obj: @$(CC) $(CFLAGS) -c -Fo$@ $< all: makefile.win ext plugin release: all @ cd ..\java @ $(MAKE) -fmakefile.win release @ cd ..\win32 -@ $(DELTREE) wfrelease > NUL @ IF NOT EXIST wfrelease $(MKDIR) wfrelease @ IF NOT EXIST wfrelease\ext $(MKDIR) wfrelease\ext @ $(CP) wf.jar wfrelease > NUL @ $(CP) $(PLUGIN_DLL) wfrelease > NUL @ $(CP) $(MOZEXT_DLL) wfrelease > NUL @ $(CP) $(PLUGIN_NATIVE_DLL) wfrelease > NUL @ $(CP) plugin.policy wfrelease > NUL @ $(CP) ext\*.jar wfrelease\ext > NUL @ $(ZIP) -r wf-bin.zip wfrelease @ echo "Release is wf-bin.zip" .SUFFIXES: .SUFFIXES: .cpp .c .obj .cpp.obj: $(CXX) $(CFLAGS) -c $< plugin_no_java: plugin_objs plugin_dll plugin_native_dll plugin_exec plugin.policy $(INSTALLER) plugin: plugin_no_java java_classes plugin_objs: $(PLUGINOBJS) $(PLUGIN_NATIVE_OBJS) plugin_dll: $(PLUGIN_DLL) ext: $(MOZEXT_DLL) $(TESTEXT_DLL) $(MOZEXT_DLL): $(MOZEXTOBJS) @echo linking $@ @$(LD) $(LIBFLAGS) -dll -def:wfe_mozilla.def -out:$@ $(MOZEXTOBJS) $(TESTEXT_DLL): $(TESTEXTOBJS) @echo linking $@ @$(LD) $(LIBFLAGS) -dll -def:wfe_test.def -out:$(TESTEXT_DLL) $(TESTEXTOBJS) $(PLUGIN_DLL): $(PLUGINOBJS) @echo linking $@ @$(LD) $(LIBFLAGS) -dll -def:jvmp.def -out:$@ $(PLUGINOBJS) $(PLUGINLIBS) plugin_native_dll: $(PLUGIN_NATIVE_DLL) $(PLUGIN_NATIVE_DLL): $(PLUGIN_NATIVE_OBJS) @echo linking $@ @$(LD) $(LIBFLAGS) -dll -out:$@ $(PLUGIN_NATIVE_OBJS) @$(CP) $@ JVMPnatives_g.dll > NUL plugin.policy: ..\..\java\plugin.policy @$(CP) ..\..\java\plugin.policy . > NUL java_classes: @ echo Making Java classes @ cd ..\java @$(MAKE) -fmakefile.win all host_prog: $(HOSTOBJS) $(HOSTPROG) host_objs: $(HOSTOBJS) $(HOSTPROG): $(HOSTOBJS) @echo linking $@ @$(LD) $(LIBFLAGS) -out:$(HOSTPROG) $(HOSTOBJS) $(HOSTLIBS) clean: @echo Removing compiled files.. @-del/Q $(PLUGINOBJS) $(HOSTOBJS) *.exe *.dll *.obj @cd ..\java @$(MAKE) -fmakefile.win clean $(INSTALLER): $(INSTOBJS) @echo Linking installer @$(LD) $(LIBFLAGS) -out:$(INSTALLER) $(INSTOBJS) $(INSTLIBS) plugin_exec: .PHONY: java_classes clean all host_objs plugin_native_dll plugin_exec release