mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
170 lines
5.3 KiB
Makefile
170 lines
5.3 KiB
Makefile
# -*- 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):
|
|
#
|
|
# 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 *****
|
|
|
|
ifndef OBJDIR
|
|
ifdef OBJDIR_NAME
|
|
OBJDIR = $(OBJDIR_NAME)
|
|
endif
|
|
endif
|
|
|
|
NSPR_VERSION = v4.0
|
|
NSPR_LIBSUFFIX = 4
|
|
|
|
NSPR_LOCAL = $(MOZ_DEPTH)/dist/$(OBJDIR)/nspr
|
|
NSPR_DIST = $(MOZ_DEPTH)/dist/$(OBJDIR)
|
|
NSPR_OBJDIR = $(OBJDIR)
|
|
ifeq ($(OS_ARCH), SunOS)
|
|
NSPR_OBJDIR := $(subst _sparc,,$(NSPR_OBJDIR))
|
|
endif
|
|
ifeq ($(OS_ARCH), Linux)
|
|
LINUX_REL := $(shell uname -r)
|
|
ifneq (,$(findstring 2.0,$(LINUX_REL)))
|
|
NSPR_OBJDIR := $(subst _All,2.0_x86_glibc_PTH,$(NSPR_OBJDIR))
|
|
else
|
|
NSPR_OBJDIR := $(subst _All,2.2_x86_glibc_PTH,$(NSPR_OBJDIR))
|
|
endif
|
|
endif
|
|
ifeq ($(OS_ARCH), AIX)
|
|
NSPR_OBJDIR := $(subst 4.1,4.2,$(NSPR_OBJDIR))
|
|
endif
|
|
ifeq ($(OS_CONFIG), IRIX6.2)
|
|
NSPR_OBJDIR := $(subst 6.2,6.2_n32_PTH,$(NSPR_OBJDIR))
|
|
endif
|
|
ifeq ($(OS_CONFIG), IRIX6.5)
|
|
NSPR_OBJDIR := $(subst 6.5,6.5_n32_PTH,$(NSPR_OBJDIR))
|
|
endif
|
|
ifeq ($(OS_ARCH), WINNT)
|
|
ifeq ($(OBJDIR), WIN32_D.OBJ)
|
|
NSPR_OBJDIR = WINNT4.0_DBG.OBJ
|
|
endif
|
|
ifeq ($(OBJDIR), WIN32_O.OBJ)
|
|
NSPR_OBJDIR = WINNT4.0_OPT.OBJ
|
|
endif
|
|
endif
|
|
NSPR_SHARED = /share/builds/components/nspr20/$(NSPR_VERSION)/$(NSPR_OBJDIR)
|
|
ifeq ($(OS_ARCH), WINNT)
|
|
NSPR_SHARED = nspr20/$(NSPR_VERSION)/$(NSPR_OBJDIR)
|
|
endif
|
|
NSPR_VERSIONFILE = $(NSPR_LOCAL)/Version
|
|
NSPR_CURVERSION := $(shell cat $(NSPR_VERSIONFILE) 2>/dev/null)
|
|
|
|
get_nspr:
|
|
@echo "Grabbing NSPR component..."
|
|
ifeq ($(NSPR_VERSION), $(NSPR_CURVERSION))
|
|
@echo "No need, NSPR is up to date in this tree (ver=$(NSPR_VERSION))."
|
|
else
|
|
mkdir -p $(NSPR_LOCAL)
|
|
mkdir -p $(NSPR_DIST)
|
|
ifneq ($(OS_ARCH), WINNT)
|
|
cp $(NSPR_SHARED)/*.jar $(NSPR_LOCAL)
|
|
else
|
|
sh $(MOZ_DEPTH)/../reltools/compftp.sh $(NSPR_SHARED) $(NSPR_LOCAL) *.jar
|
|
endif
|
|
unzip -o $(NSPR_LOCAL)/mdbinary.jar -d $(NSPR_DIST)
|
|
mkdir -p $(NSPR_DIST)/include
|
|
unzip -o $(NSPR_LOCAL)/mdheader.jar -d $(NSPR_DIST)/include
|
|
rm -rf $(NSPR_DIST)/META-INF
|
|
rm -rf $(NSPR_DIST)/include/META-INF
|
|
echo $(NSPR_VERSION) > $(NSPR_VERSIONFILE)
|
|
endif
|
|
|
|
SHIP_DIST = $(MOZ_DEPTH)/dist/$(OBJDIR)
|
|
SHIP_DIR = $(SHIP_DIST)/SHIP
|
|
|
|
SHIP_LIBS = libjs.$(SO_SUFFIX) libjs.a
|
|
ifeq ($(OS_ARCH), WINNT)
|
|
SHIP_LIBS = js32.dll js32.lib
|
|
endif
|
|
SHIP_LIBS += $(LCJAR)
|
|
SHIP_LIBS := $(addprefix $(SHIP_DIST)/lib/, $(SHIP_LIBS))
|
|
|
|
SHIP_INCS = js*.h prmjtime.h resource.h *.msg *.tbl
|
|
SHIP_INCS := $(addprefix $(SHIP_DIST)/include/, $(SHIP_INCS))
|
|
|
|
SHIP_BINS = js
|
|
ifeq ($(OS_ARCH), WINNT)
|
|
SHIP_BINS := $(addsuffix .exe, $(SHIP_BINS))
|
|
endif
|
|
SHIP_BINS := $(addprefix $(SHIP_DIST)/bin/, $(SHIP_BINS))
|
|
|
|
ifdef BUILD_OPT
|
|
JSREFJAR = jsref_opt.jar
|
|
else
|
|
ifdef BUILD_IDG
|
|
JSREFJAR = jsref_idg.jar
|
|
else
|
|
JSREFJAR = jsref_dbg.jar
|
|
endif
|
|
endif
|
|
|
|
ship:
|
|
mkdir -p $(SHIP_DIR)/$(LIBDIR)
|
|
mkdir -p $(SHIP_DIR)/include
|
|
mkdir -p $(SHIP_DIR)/bin
|
|
cp $(SHIP_LIBS) $(SHIP_DIR)/$(LIBDIR)
|
|
cp $(SHIP_INCS) $(SHIP_DIR)/include
|
|
cp $(SHIP_BINS) $(SHIP_DIR)/bin
|
|
cd $(SHIP_DIR); \
|
|
zip -r $(JSREFJAR) bin lib include
|
|
ifdef BUILD_SHIP
|
|
cp $(SHIP_DIR)/$(JSREFJAR) $(BUILD_SHIP)
|
|
endif
|
|
|
|
CWD = $(shell pwd)
|
|
shipSource: $(SHIP_DIR)/jsref_src.lst .FORCE
|
|
mkdir -p $(SHIP_DIR)
|
|
cd $(MOZ_DEPTH)/.. ; \
|
|
zip $(CWD)/$(SHIP_DIR)/jsref_src.jar -@ < $(CWD)/$(SHIP_DIR)/jsref_src.lst
|
|
ifdef BUILD_SHIP
|
|
cp $(SHIP_DIR)/jsref_src.jar $(BUILD_SHIP)
|
|
endif
|
|
|
|
JSREFSRCDIRS := $(shell cat $(DEPTH)/SpiderMonkey.rsp)
|
|
$(SHIP_DIR)/jsref_src.lst: .FORCE
|
|
mkdir -p $(SHIP_DIR)
|
|
rm -f $@
|
|
touch $@
|
|
for d in $(JSREFSRCDIRS); do \
|
|
cd $(MOZ_DEPTH)/..; \
|
|
ls -1 -d $$d | grep -v CVS | grep -v \.OBJ >> $(CWD)/$@; \
|
|
cd $(CWD); \
|
|
done
|
|
|
|
.FORCE:
|