Magellan Linux

Contents of /trunk/spidermonkey/patches/spidermonkey-1.60-makefile.patch

Parent Directory Parent Directory | Revision Log Revision Log


Revision 153 - (show annotations) (download)
Tue May 8 20:52:56 2007 UTC (17 years ago) by niro
File size: 3457 byte(s)
-import

1 --- js/src/Makefile.ref
2 +++ js/src/Makefile.ref
3 @@ -127,7 +127,7 @@ endif
4 ifdef JS_READLINE
5 # For those platforms with the readline library installed.
6 DEFINES += -DEDITLINE
7 -PROG_LIBS += -lreadline -ltermcap
8 +PROG_LIBS += -lreadline
9 else
10 ifdef JS_EDITLINE
11 # Use the editline library, built locally.
12 @@ -370,3 +370,16 @@ TARFILES = files `cat files`
13 SUFFIXES: .i
14 %.i: %.c
15 $(CC) -C -E $(CFLAGS) $< > $*.i
16 +
17 +DESTDIR :=
18 +PREFIX := /usr
19 +BINDIR := $(PREFIX)/bin
20 +MY_LIBDIR := $(PREFIX)/$(LIBDIR)
21 +INCLUDEDIR := $(PREFIX)/include/js
22 +INSTALL := install -g 0 -o root
23 +install:
24 + $(INSTALL) -m 755 -d $(DESTDIR)$(INCLUDEDIR) $(DESTDIR)$(MY_LIBDIR) $(DESTDIR)$(BINDIR)
25 + $(INSTALL) -m 755 $(SHARED_LIBRARY) $(DESTDIR)$(MY_LIBDIR)
26 + $(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(MY_LIBDIR)
27 + $(INSTALL) -m 755 $(OBJDIR)/js $(OBJDIR)/jscpucfg $(DESTDIR)$(BINDIR)
28 + $(INSTALL) -m 644 $(HFILES) $(DESTDIR)$(INCLUDEDIR)
29 --- js/src/config/Linux_All.mk
30 +++ js/src/config/Linux_All.mk
31 @@ -41,37 +41,15 @@
32 # Config for all versions of Linux
33 #
34
35 -CC = gcc
36 -CCC = g++
37 CFLAGS += -Wall -Wno-format
38 OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R
39
40 RANLIB = echo
41 -MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS)
42 +MKSHLIB = $(LD) -shared $(XMKSHLIBOPTS) -soname $(notdir $@)
43
44 #.c.o:
45 # $(CC) -c -MD $*.d $(CFLAGS) $<
46
47 -CPU_ARCH = $(shell uname -m)
48 -# don't filter in x86-64 architecture
49 -ifneq (x86_64,$(CPU_ARCH))
50 -ifeq (86,$(findstring 86,$(CPU_ARCH)))
51 -CPU_ARCH = x86
52 -OS_CFLAGS+= -DX86_LINUX
53 -
54 -ifeq (gcc, $(CC))
55 -# if using gcc on x86, check version for opt bug
56 -# (http://bugzilla.mozilla.org/show_bug.cgi?id=24892)
57 -GCC_VERSION := $(shell gcc -v 2>&1 | grep version | awk '{ print $$3 }')
58 -GCC_LIST:=$(sort 2.91.66 $(GCC_VERSION) )
59 -
60 -ifeq (2.91.66, $(firstword $(GCC_LIST)))
61 -CFLAGS+= -DGCC_OPT_BUG
62 -endif
63 -endif
64 -endif
65 -endif
66 -
67 GFX_ARCH = x
68
69 OS_LIBS = -lm -lc
70 @@ -88,16 +66,6 @@
71 endif
72
73 # Use the editline library to provide line-editing support.
74 -JS_EDITLINE = 1
75 +JS_READLINE = 1
76
77 -ifeq ($(CPU_ARCH),x86_64)
78 -# Use VA_COPY() standard macro on x86-64
79 -# FIXME: better use it everywhere
80 OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy
81 -endif
82 -
83 -ifeq ($(CPU_ARCH),x86_64)
84 -# We need PIC code for shared libraries
85 -# FIXME: better patch rules.mk & fdlibm/Makefile*
86 -OS_CFLAGS += -DPIC -fPIC
87 -endif
88 --- js/src/rules.mk
89 +++ js/src/rules.mk
90 @@ -82,6 +82,10 @@ $(OBJDIR)/%.o: %.c
91 @$(MAKE_OBJDIR)
92 $(CC) -o $@ -c $(CFLAGS) $*.c
93
94 +$(OBJDIR)/%.lo: %.c
95 + @$(MAKE_OBJDIR)
96 + $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC
97 +
98 $(OBJDIR)/%.o: %.s
99 @$(MAKE_OBJDIR)
100 $(AS) -o $@ $(ASFLAGS) $*.s
101 @@ -111,11 +115,12 @@ $(SHARED_LIBRARY): $(LIB_OBJS)
102 /implib:"$(OBJDIR)/$(@F:.dll=.lib)" $^
103 else
104 $(LIBRARY): $(LIB_OBJS)
105 - $(AR) rv $@ $?
106 + $(AR) cr $@ $?
107 $(RANLIB) $@
108
109 -$(SHARED_LIBRARY): $(LIB_OBJS)
110 - $(MKSHLIB) -o $@ $(LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS)
111 +SHARED_LIB_OBJS := $(LIB_OBJS:.o=.lo)
112 +$(SHARED_LIBRARY): $(SHARED_LIB_OBJS)
113 + $(MKSHLIB) -o $@ $(SHARED_LIB_OBJS) $(LDFLAGS) $(OTHER_LIBS)
114 endif
115 endif
116
117 --- js/src/fdlibm/Makefile.ref
118 +++ js/src/fdlibm/Makefile.ref
119 @@ -151,7 +151,7 @@
120
121 $(OBJDIR)/%.o: %.c
122 @$(MAKE_OBJDIR)
123 - $(CC) -o $@ -c $(CFLAGS) $*.c
124 + $(CC) -o $@ -c $(CFLAGS) $*.c -fPIC
125
126 $(OBJDIR)/%.o: %.s
127 @$(MAKE_OBJDIR)
128 --- js/src/config.mk
129 +++ js/src/config.mk
130 @@ -112,6 +112,8 @@
131 CP = cp
132 endif
133
134 +BUILD_OPT := 1
135 +
136 ifdef BUILD_OPT
137 OPTIMIZER = -O
138 DEFINES += -UDEBUG -DNDEBUG -UDEBUG_$(shell whoami)