#!gmake
#
# The contents of this file are subject to the Netscape Public License
# Version 1.0 (the "NPL"); you may not use this file except in
# compliance with the NPL.  You may obtain a copy of the NPL at
# http://www.mozilla.org/NPL/
#
# Software distributed under the NPL is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
# for the specific language governing rights and limitations under the
# NPL.
#
# The Initial Developer of this code under the NPL is Netscape
# Communications Corporation.  Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation.  All Rights
# Reserved.



#//------------------------------------------------------------------------
#//
#// Makefile to build 
#//
#//------------------------------------------------------------------------


#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of NS
#//
#//------------------------------------------------------------------------
DEPTH= ..\..\..
IGNORE_MANIFEST=1

!if "$(MOZ_BITS)" == "16"
DIRS= nsinit
!else
DIRS= nsdiff nspatch
!endif

!ifndef MAKE_OBJ_TYPE
MAKE_OBJ_TYPE=EXE
!endif

#//------------------------------------------------------------------------
#//
#// Define any Public Make Variables here: (ie. PDFFILE, MAPFILE, ...)
#//
#//------------------------------------------------------------------------
LIBNAME=softup$(MOZ_BITS)
PDBFILE=$(LIBNAME).pdb

#//------------------------------------------------------------------------
#// 
#// Define the files necessary to build the target (ie. OBJS)
#//
#//------------------------------------------------------------------------
OBJS=                                       \
    .\$(OBJDIR)\softupdt.obj                \
	.\$(OBJDIR)\su_folderspec.obj			\
	.\$(OBJDIR)\su_instl.obj				\
	.\$(OBJDIR)\su_trigger.obj              \
	.\$(OBJDIR)\su_win.obj					\
    .\$(OBJDIR)\vr_java.obj                 \
!if "$(MOZ_BITS)" == "16"
	.\$(OBJDIR)\su_nodl.obj				\
!endif
	.\$(OBJDIR)\su_wjava.obj				\
    $(NULL)


JRI_GEN=							\
    netscape.softupdate.FolderSpec		\
    netscape.softupdate.InstallObject		\
    netscape.softupdate.InstallFile			\
    netscape.softupdate.InstallPatch		\
    netscape.softupdate.InstallExecute		\
    netscape.softupdate.Registry            \
    netscape.softupdate.RegistryNode        \
    netscape.softupdate.RegistryException   \
    netscape.softupdate.RegKeyEnumerator    \
    netscape.softupdate.RegEntryEnumerator  \
    netscape.softupdate.SoftwareUpdate		\
    netscape.softupdate.SoftUpdateException	\
    netscape.softupdate.Strings			\
    netscape.softupdate.Trigger			\
    netscape.softupdate.VersionInfo		\
    netscape.softupdate.VersionRegistry     \
    netscape.softupdate.VerRegEnumerator    \
    netscape.softupdate.WinProfile          \
    netscape.softupdate.WinReg              \
    netscape.softupdate.WinRegValue         \
    $(NULL)

#//------------------------------------------------------------------------
#//
#// Define any Public Targets here (ie. PROGRAM, LIBRARY, DLL, ...)
#// (these must be defined before the common makefiles are included)
#//
#//------------------------------------------------------------------------

LIBRARY= .\$(OBJDIR)\$(LIBNAME).lib

#//------------------------------------------------------------------------
#//
#// Define any local options for the make tools 
#//     (ie. LCFLAGS, LLFLAGS, LLIBS, LINCS)
#//
#//------------------------------------------------------------------------
LINCS= $(LINCS) -I_jri       \
		-I../include \
		-I$(DEPTH)/lib/libnet	\
		-I$(DEPTH)/lib/layout	\
		-I$(PUBLIC)/jar \
		-I$(DEPTH)/lib/libstyle	\
		-I$(DEPTH)/cmd/winfe	\
		$(NULL)

#//
#// For Win16 the following directories have been collapsed into
#// ns/dist/public/win16 to conserve command-line argument space...
#//
!if "$(MOZ_BITS)" == "32"
LINCS= $(LINCS) \
		-I$(PUBLIC)/softupdt	\
		-I$(PUBLIC)/libreg	\
#if defined(MOZ_OJI)
		-I$(PUBLIC)/oji 	\
		-I$(PUBLIC)/npj 	\
#elseif defined(MOZ_JAVA)
		-I$(PUBLIC)/applet	\
#endif
		-I$(PUBLIC)/java	\
		-I$(PUBLIC)/nspr	\
		-I$(PUBLIC)/js		\
		-I$(PUBLIC)/dbm		\
		-I$(PUBLIC)/security	\
		-I$(PUBLIC)/pref	\
		-I$(PUBLIC)/libfont	\
		-I$(PUBLIC)/jtools	\
		-I$(PUBLIC)/winfont	\
		-I$(PUBLIC)/rdf		\
		-I$(PUBLIC)/network	\
		$(NULL)
!endif

#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>

CFLAGS=$(CFLAGS) -DMOZILLA_CLIENT

!if "$(MOZ_BITS)" == "32"
PUBLIC_HEADER_DIR=$(PUBLIC)\softupdt
!else
PUBLIC_HEADER_DIR=$(PUBLIC)\win16
!endif

export::
    $(MAKE_INSTALL) _jri\netscape_softupdate_InstallObject.h        $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_SoftwareUpdate.h       $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_SoftUpdateException.h  $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_Strings.h              $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_VersionInfo.h          $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_Trigger.h              $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_FolderSpec.h           $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_VersionRegistry.h      $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_VerRegEnumerator.h     $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_WinProfile.h           $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_WinReg.h               $(PUBLIC_HEADER_DIR)
    $(MAKE_INSTALL) _jri\netscape_softupdate_WinRegValue.h          $(PUBLIC_HEADER_DIR)


install:: $(LIBRARY)
    $(MAKE_INSTALL) $(LIBRARY) $(DIST)\lib

clobber::
    $(RM_R) _jri

.\$(OBJDIR)\su_folderspec.obj:					 \
	$(JRI_GEN_DIR)\netscape_softupdate_FolderSpec.c		 \
	$(JRI_GEN_DIR)/netscape_softupdate_SoftwareUpdate.h	 \


.\$(OBJDIR)\su_instl.obj:					 \
	$(JRI_GEN_DIR)\netscape_softupdate_InstallFile.c	 \
	$(JRI_GEN_DIR)\netscape_softupdate_InstallExecute.c	 \
	$(JRI_GEN_DIR)\netscape_softupdate_InstallObject.c	 \
	$(JRI_GEN_DIR)\netscape_softupdate_InstallPatch.c	 \
	$(JRI_GEN_DIR)/netscape_softupdate_SoftwareUpdate.h	 \
	$(JRI_GEN_DIR)/netscape_softupdate_SoftUpdateException.h \
	$(JRI_GEN_DIR)\netscape_softupdate_Strings.h

.\$(OBJDIR)\su_trigger.obj:					 \
	$(JRI_GEN_DIR)\netscape_softupdate_Trigger.c		 \
	$(JRI_GEN_DIR)\netscape_softupdate_SoftUpdateException.c \
	$(JRI_GEN_DIR)\netscape_softupdate_SoftwareUpdate.c	 \
	$(JRI_GEN_DIR)\netscape_softupdate_Strings.c

.\$(OBJDIR)\su_wjava.obj:					 \
	$(JRI_GEN_DIR)\netscape_softupdate_WinProfile.c		 \
	$(JRI_GEN_DIR)\netscape_softupdate_WinReg.c		 \
	$(JRI_GEN_DIR)\netscape_softupdate_WinRegValue.c	

