| #! gmake |
| # |
| # ***** BEGIN LICENSE BLOCK ***** |
| # Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| # |
| # 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 Netscape Portable Runtime (NSPR). |
| # |
| # The Initial Developer of the Original Code is |
| # Netscape Communications Corporation. |
| # Portions created by the Initial Developer are Copyright (C) 1998-2000 |
| # the Initial Developer. All Rights Reserved. |
| # |
| # Contributor(s): |
| # |
| # Alternatively, the contents of this file may be used under the terms of |
| # either the GNU General Public License Version 2 or later (the "GPL"), or |
| # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
| # in which case the provisions of the GPL or the LGPL are applicable instead |
| # of those above. If you wish to allow use of your version of this file only |
| # under the terms of either the GPL or the LGPL, and not to allow others to |
| # use your version of this file under the terms of the MPL, indicate your |
| # decision by deleting the provisions above and replace them with the notice |
| # and other provisions required by the GPL or the LGPL. If you do not delete |
| # the provisions above, a recipient may use your version of this file under |
| # the terms of any one of the MPL, the GPL or the LGPL. |
| # |
| # ***** END LICENSE BLOCK ***** |
| |
| MOD_DEPTH = .. |
| topsrcdir = @top_srcdir@ |
| srcdir = @srcdir@ |
| VPATH = @srcdir@ |
| |
| include $(MOD_DEPTH)/config/autoconf.mk |
| |
| # Indicate that this directory builds build tools. |
| INTERNAL_TOOLS = 1 |
| |
| # For sanity's sake, we compile nsinstall without the wrapped system |
| # headers, so that we can use it to set up the wrapped system headers. |
| VISIBILITY_FLAGS = |
| |
| # autoconf.mk must be deleted last (from the top-level directory) |
| # because it is included by every makefile. |
| DIST_GARBAGE = nsprincl.mk nsprincl.sh nspr-config |
| |
| RELEASE_BINS = nspr-config |
| |
| include $(topsrcdir)/config/config.mk |
| |
| CSRCS = now.c |
| |
| # This version hasn't been ported for us; the one in mozilla/config has |
| ifneq ($(OS_ARCH),OS2) |
| CSRCS += nsinstall.c |
| |
| PLSRCS = nfspwd.pl |
| endif |
| |
| ifeq (,$(CROSS_COMPILE)$(filter-out WINNT OS2,$(OS_ARCH))) |
| PROG_SUFFIX = .exe |
| else |
| PROG_SUFFIX = |
| endif |
| |
| # Temporary workaround to disable the generation of |
| # library build time because now.c uses the 'long long' |
| # data type that's not available on some platforms. |
| ifeq (,$(filter-out NEC NEXTSTEP QNX SCOOS UNIXWARE,$(OS_ARCH))) |
| DEFINES += -DOMIT_LIB_BUILD_TIME |
| endif |
| |
| ifeq ($(OS_ARCH), IRIX) |
| ifeq ($(basename $(OS_RELEASE)),6) |
| ifndef NS_USE_GCC |
| ifeq ($(USE_N32),1) |
| XLDOPTS += -n32 -Wl,-woff,85 |
| else |
| ifeq ($(USE_64),1) |
| XLDOPTS += -64 |
| else |
| XLDOPTS += -32 |
| endif |
| endif |
| endif |
| endif |
| endif |
| |
| ifeq ($(OS_ARCH), HP-UX) |
| ifeq ($(USE_64),1) |
| XLDOPTS += +DD64 |
| endif |
| endif |
| |
| ifeq ($(OS_ARCH), OS2) |
| XCFLAGS = $(OS_CFLAGS) |
| endif |
| |
| include $(topsrcdir)/config/rules.mk |
| |
| PROGS = $(OBJDIR)/now$(PROG_SUFFIX) |
| |
| ifeq (,$(CROSS_COMPILE)$(filter-out OS2 WINNT,$(OS_ARCH))) |
| TARGETS = $(PROGS) |
| else |
| ifeq (,$(filter-out SYMBIAN WINCE,$(OS_ARCH))) |
| TARGETS = $(PROGS) |
| else |
| PROGS += $(OBJDIR)/nsinstall$(PROG_SUFFIX) |
| TARGETS = $(PROGS) $(PLSRCS:.pl=) |
| endif |
| endif |
| |
| OUTOPTION = -o # end of the line |
| ifeq (,$(filter-out WINNT WIN95 WINCE,$(OS_TARGET))) |
| ifndef NS_USE_GCC |
| OUTOPTION = -Fe |
| endif |
| endif |
| |
| # Redefine MAKE_OBJDIR for just this directory |
| define MAKE_OBJDIR |
| if test ! -d $(@D); then rm -rf $(@D); mkdir $(@D); else true; fi |
| endef |
| |
| export:: $(TARGETS) |
| rm -f $(dist_bindir)/nspr-config |
| |
| ifdef WRAP_SYSTEM_INCLUDES |
| export:: |
| if test ! -d system_wrappers; then mkdir system_wrappers; fi |
| $(PERL) $(srcdir)/make-system-wrappers.pl system_wrappers < $(srcdir)/system-headers |
| $(INSTALL) system_wrappers $(dist_includedir) |
| endif |
| |
| $(OBJDIR)/%$(PROG_SUFFIX): $(OBJDIR)/%.$(OBJ_SUFFIX) |
| @$(MAKE_OBJDIR) |
| $(CC) $(XCFLAGS) $< $(LDFLAGS) $(XLDOPTS) $(OUTOPTION)$@ |
| |
| install:: nspr.m4 |
| $(NSINSTALL) -D $(DESTDIR)$(datadir)/aclocal |
| $(NSINSTALL) -t -m 0644 $< $(DESTDIR)$(datadir)/aclocal |