head 1.2; access; symbols MOZILLA_JS_1_6_20070208:1.1.1.1 MOZILLA_JS_1_6_20070102:1.1.1.1 MOZILLA_JS_1_6_20060916:1.1.1.1 MOZILLA_JS_1_6_20060820:1.1.1.1 MOZILLA_JS_1_6_20060803:1.1.1.1 MOZILLA_JS_1_6_20060731:1.1.1.1 MOZILLA_JS_1_6_20060730:1.1.1.1 MOZILLA_JS_1_6_20060729:1.1.1.1 MOZILLA_JS_1_6_20060724:1.1.1.1 JS_1_6-1_5_0_5-20060722:1.1.1.1 MOZILLA:1.1.1; locks; strict; comment @# @; 1.2 date 2006.07.22.10.36.42; author rse; state dead; branches; next 1.1; commitid zYqZH6dTMkAdnQFr; 1.1 date 2003.11.15.00.11.04; author rse; state Exp; branches 1.1.1.1; next ; commitid yL3y5cCdrhpJcQFr; 1.1.1.1 date 2003.11.15.00.11.04; author rse; state Exp; branches; next ; commitid yL3y5cCdrhpJcQFr; desc @@ 1.2 log @remove files we do not use at all @ text @# -*- Mode: makefile -*- # # ***** 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 Mozilla Communicator client code, released # March 31, 1998. # # The Initial Developer of the Original Code is # Netscape Communications Corporation. # Portions created by the Initial Developer are Copyright (C) 1998-1999 # the Initial Developer. All Rights Reserved. # # Contributor(s): # Michael Ang # # Alternatively, the contents of this file may be used under the terms of # either of 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 ***** # # JSRef GNUmake makefile rules # ifdef USE_MSVC LIB_OBJS = $(addprefix $(OBJDIR)/, $(LIB_CFILES:.c=.obj)) PROG_OBJS = $(addprefix $(OBJDIR)/, $(PROG_CFILES:.c=.obj)) else LIB_OBJS = $(addprefix $(OBJDIR)/, $(LIB_CFILES:.c=.o)) LIB_OBJS += $(addprefix $(OBJDIR)/, $(LIB_ASFILES:.s=.o)) PROG_OBJS = $(addprefix $(OBJDIR)/, $(PROG_CFILES:.c=.o)) endif CFILES = $(LIB_CFILES) $(PROG_CFILES) OBJS = $(LIB_OBJS) $(PROG_OBJS) ifdef USE_MSVC # TARGETS = $(LIBRARY) # $(PROGRAM) not supported for MSVC yet TARGETS += $(SHARED_LIBRARY) $(PROGRAM) # it is now else TARGETS += $(LIBRARY) $(SHARED_LIBRARY) $(PROGRAM) endif all: +$(LOOP_OVER_PREDIRS) ifneq "$(strip $(TARGETS))" "" $(MAKE) -f Makefile.ref $(TARGETS) endif +$(LOOP_OVER_DIRS) $(OBJDIR)/%: %.c @@$(MAKE_OBJDIR) $(CC) -o $@@ $(CFLAGS) $*.c $(LDFLAGS) # This rule must come before the rule with no dep on header $(OBJDIR)/%.o: %.c %.h @@$(MAKE_OBJDIR) $(CC) -o $@@ -c $(CFLAGS) $*.c $(OBJDIR)/%.o: %.c @@$(MAKE_OBJDIR) $(CC) -o $@@ -c $(CFLAGS) $*.c $(OBJDIR)/%.o: %.s @@$(MAKE_OBJDIR) $(AS) -o $@@ $(ASFLAGS) $*.s # This rule must come before rule with no dep on header $(OBJDIR)/%.obj: %.c %.h @@$(MAKE_OBJDIR) $(CC) -Fo$(OBJDIR)/ -c $(CFLAGS) $(JSDLL_CFLAGS) $*.c $(OBJDIR)/%.obj: %.c @@$(MAKE_OBJDIR) $(CC) -Fo$(OBJDIR)/ -c $(CFLAGS) $(JSDLL_CFLAGS) $*.c $(OBJDIR)/js.obj: js.c @@$(MAKE_OBJDIR) $(CC) -Fo$(OBJDIR)/ -c $(CFLAGS) $< ifeq ($(OS_ARCH),OS2) $(LIBRARY): $(LIB_OBJS) $(AR) $@@ $? $(AR_OS2_SUFFIX) $(RANLIB) $@@ else ifdef USE_MSVC $(SHARED_LIBRARY): $(LIB_OBJS) link.exe $(LIB_LINK_FLAGS) /base:0x61000000 $(OTHER_LIBS) \ /out:"$@@" /pdb:none\ /implib:"$(OBJDIR)/$(@@F:.dll=.lib)" $^ else $(LIBRARY): $(LIB_OBJS) $(AR) rv $@@ $? $(RANLIB) $@@ $(SHARED_LIBRARY): $(LIB_OBJS) $(MKSHLIB) -o $@@ $(LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS) endif endif # Java stuff $(CLASSDIR)/$(OBJDIR)/$(JARPATH)/%.class: %.java mkdir -p $(@@D) $(JAVAC) $(JAVAC_FLAGS) $< define MAKE_OBJDIR if test ! -d $(@@D); then rm -rf $(@@D); mkdir -p $(@@D); fi endef ifdef DIRS LOOP_OVER_DIRS = \ @@for d in $(DIRS); do \ if test -d $$d; then \ set -e; \ echo "cd $$d; $(MAKE) -f Makefile.ref $@@"; \ cd $$d; $(MAKE) -f Makefile.ref $@@; cd ..; \ set +e; \ else \ echo "Skipping non-directory $$d..."; \ fi; \ done endif ifdef PREDIRS LOOP_OVER_PREDIRS = \ @@for d in $(PREDIRS); do \ if test -d $$d; then \ set -e; \ echo "cd $$d; $(MAKE) -f Makefile.ref $@@"; \ cd $$d; $(MAKE) -f Makefile.ref $@@; cd ..; \ set +e; \ else \ echo "Skipping non-directory $$d..."; \ fi; \ done endif export: +$(LOOP_OVER_PREDIRS) mkdir -p $(DIST)/include $(DIST)/$(LIBDIR) $(DIST)/bin ifneq "$(strip $(HFILES))" "" $(CP) $(HFILES) $(DIST)/include endif ifneq "$(strip $(LIBRARY))" "" $(CP) $(LIBRARY) $(DIST)/$(LIBDIR) endif ifneq "$(strip $(JARS))" "" $(CP) $(JARS) $(DIST)/$(LIBDIR) endif ifneq "$(strip $(SHARED_LIBRARY))" "" $(CP) $(SHARED_LIBRARY) $(DIST)/$(LIBDIR) endif ifneq "$(strip $(PROGRAM))" "" $(CP) $(PROGRAM) $(DIST)/bin endif +$(LOOP_OVER_DIRS) clean: rm -rf $(OBJS) @@cd fdlibm; $(MAKE) -f Makefile.ref clean clobber: rm -rf $(OBJS) $(TARGETS) $(DEPENDENCIES) @@cd fdlibm; $(MAKE) -f Makefile.ref clobber depend: gcc -MM $(CFLAGS) $(LIB_CFILES) tar: tar cvf $(TARNAME) $(TARFILES) gzip $(TARNAME) @ 1.1 log @Initial revision @ text @@ 1.1.1.1 log @Import new upstream version: Mozilla JavaScript 1.6-1.5.0.5-20060722 @ text @@