126 lines
3.5 KiB
Plaintext

#!nmake
#
# The contents of this file are subject to the Netscape 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/NPL/
#
# 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 mozilla.org code.
#
# The Initial Developer of the Original Code is Netscape
# Communications Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#//------------------------------------------------------------------------
#//
#// Makefile to build
#//
#//------------------------------------------------------------------------
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of NS
#//
#//------------------------------------------------------------------------
DEPTH= ..\..\..
!ifdef MOZ_STATIC_COMPONENT_LIBS
MAKE_OBJ_TYPE=LIB
!else
MAKE_OBJ_TYPE=DLL
!endif
#//--- pick at most one of the IO types. Commenting both of
#//--- them out gives you normal NSPR I/O
USE_BUFFERED_REGISTRY_IO=1
#USE_MMAP_REGISTRY_IO=1
#//------------------------------------------------------------------------
#//
#// Define the files necessary to build the target (ie. OBJS)
#//
#//------------------------------------------------------------------------
OBJS= \
.\$(OBJDIR)\reg.obj \
.\$(OBJDIR)\VerReg.obj \
.\$(OBJDIR)\vr_stubs.obj \
!if defined(USE_MMAP_REGISTRY_IO)
.\$(OBJDIR)\mmapio.obj \
!endif
!if defined(USE_BUFFERED_REGISTRY_IO)
.\$(OBJDIR)\nr_bufio.obj \
!endif
$(NULL)
#//------------------------------------------------------------------------
#//
#// Define any Public Targets here (ie. PROGRAM, LIBRARY, DLL, ...)
#// (these must be defined before the common makefiles are included)
#//
#//------------------------------------------------------------------------
!ifdef MOZ_STATIC_COMPONENT_LIBS
MODULE=mozreg
LIBRARY_NAME=mozreg
LIB=$(OBJDIR)\$(LIBRARY_NAME).lib
!else
MODULE=mozreg
DLLNAME=mozreg
DLL=$(OBJDIR)\$(DLLNAME).dll
!endif
#//------------------------------------------------------------------------
#//
#// Define any local options for the make tools
#// (ie. LCFLAGS, LLFLAGS, LLIBS, LINCS)
#//
#//------------------------------------------------------------------------
!if defined(USE_MMAP_REGISTRY_IO)
LCFLAGS=$(LCFLAGS) -DUSE_MMAP_REGISTRY_IO
!endif
!if defined(USE_BUFFERED_REGISTRY_IO)
LCFLAGS=$(LCFLAGS) -DUSE_BUFFERED_REGISTRY_IO
!endif
LLIBS = \
$(LIBNSPR) \
$(NULL)
#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/rules.mak>
!ifdef MOZ_STATIC_COMPONENT_LIBS
export:: $(LIB)
$(MAKE_INSTALL) $(OBJDIR)\$(LIBRARY_NAME).lib $(DIST)\lib
clobber::
$(RM) $(DIST)\lib\$(LIBRARY_NAME).lib
!else
export:: $(DLL)
$(MAKE_INSTALL) $(OBJDIR)\$(DLLNAME).lib $(DIST)\lib
$(MAKE_INSTALL) $(DLL) $(DIST)\bin
clobber::
$(RM) $(DIST)\bin\$(DLLNAME).dll
$(RM) $(DIST)\lib\$(DLLNAME).lib
!endif