1 # allow pass CFLAGS, replace -O, -pg,-DPROFILING with $(CFLAGS)
2 Makefiles=$(find . -type f -name Makefile\*)
3 %{__sed} -i -e 's@^CFLAGS[ \t]*=@override CFLAGS += @' $Makefiles
4 %{__sed} -i -e 's@\(^override CFLAGS += .*\)-O \(.*\)@\1\2@' $Makefiles
5 %{__sed} -i -e 's@^CCFLAGS[ \t]*=\(.*\)@override CCFLAGS += \1 $(CFLAGS)@' $Makefiles
6 %{__sed} -i -e 's@-pg -O -DPROFILING@ $(CFLAGS) @' asmrun/Makefile
7 %{__sed} -i -e 's@-O@$(CFLAGS)@' otherlibs/systhreads/Makefile
9 diff -ur ocaml-3.11.0/asmrun/Makefile ocaml-3.11.0.CFLAGS/asmrun/Makefile
10 --- ocaml-3.11.0/asmrun/Makefile 2007-11-15 14:21:15.000000000 +0100
11 +++ ocaml-3.11.0.CFLAGS/asmrun/Makefile 2009-02-16 12:18:06.599221049 +0100
14 FLAGS=-I../byterun -DCAML_NAME_SPACE -DNATIVE_CODE \
15 -DTARGET_$(ARCH) -DSYS_$(SYSTEM) $(IFLEXDIR)
16 -CFLAGS=$(FLAGS) -O $(NATIVECCCOMPOPTS)
17 +override CFLAGS += $(FLAGS) $(NATIVECCCOMPOPTS)
18 DFLAGS=$(FLAGS) -g -DDEBUG $(NATIVECCCOMPOPTS)
19 -PFLAGS=$(FLAGS) -pg -O -DPROFILING $(NATIVECCPROFOPTS)
20 +PFLAGS=$(FLAGS) $(CFLAGS) $(NATIVECCPROFOPTS)
22 COBJS=startup.o main.o fail.o roots.o globroots.o signals.o signals_asm.o \
23 misc.o freelist.o major_gc.o minor_gc.o memory.o alloc.o compare.o ints.o \
24 --- ocaml-4.02.1/asmrun/Makefile.nt.orig 2014-11-06 21:32:19.358167666 +0100
25 +++ ocaml-4.02.1/asmrun/Makefile.nt 2014-11-07 16:19:43.681995569 +0100
27 include ../config/Makefile
30 -CFLAGS=-I../byterun -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) \
31 +override CFLAGS += -I../byterun -DNATIVE_CODE -DTARGET_$(ARCH) -DSYS_$(SYSTEM) \
34 COBJS=startup.$(O) main.$(O) fail.$(O) roots.$(O) signals.$(O) signals_asm.$(O)\
35 --- ocaml-3.12.0/byterun/Makefile 2008-11-08 17:29:02.000000000 +0100
36 +++ ocaml-3.12.0.CFLAGS/byterun/Makefile 2009-02-16 12:18:01.212550815 +0100
39 include Makefile.common
41 -CFLAGS=-DCAML_NAME_SPACE -O $(BYTECCCOMPOPTS) $(IFLEXDIR)
42 +override CFLAGS += -DCAML_NAME_SPACE $(BYTECCCOMPOPTS) $(IFLEXDIR)
43 DFLAGS=-DCAML_NAME_SPACE -g -DDEBUG $(BYTECCCOMPOPTS) $(IFLEXDIR)
45 OBJS=$(COMMONOBJS) unix.o main.o
46 diff -ur ocaml-3.11.0/byterun/Makefile.nt ocaml-3.11.0.CFLAGS/byterun/Makefile.nt
47 --- ocaml-3.11.0/byterun/Makefile.nt 2008-11-26 14:26:53.000000000 +0100
48 +++ ocaml-3.11.0.CFLAGS/byterun/Makefile.nt 2009-02-16 12:18:01.215883365 +0100
51 include Makefile.common
53 -CFLAGS=-DOCAML_STDLIB_DIR='"$(LIBDIR)"' $(IFLEXDIR)
54 +override CFLAGS += -DOCAML_STDLIB_DIR='"$(LIBDIR)"' $(IFLEXDIR)
57 OBJS=$(COMMONOBJS:.o=.$(O)) win32.$(O) main.$(O)
58 --- ocaml-4.02.1/otherlibs/Makefile.orig 2014-11-06 21:32:19.361500999 +0100
59 +++ ocaml-4.02.1/otherlibs/Makefile 2014-11-07 16:20:23.921993882 +0100
61 CAMLC=$(ROOTDIR)/boot/ocamlrun $(ROOTDIR)/ocamlc -nostdlib -I $(ROOTDIR)/stdlib
62 CAMLOPT=$(ROOTDIR)/boot/ocamlrun $(ROOTDIR)/ocamlopt -nostdlib \
64 -CFLAGS=-I$(ROOTDIR)/byterun -O $(SHAREDCCCOMPOPTS) $(EXTRACFLAGS)
65 +override CFLAGS += -I$(ROOTDIR)/byterun -O $(SHAREDCCCOMPOPTS) $(EXTRACFLAGS)
67 include ../Makefile.shared
68 # Note .. is the current directory (this makefile is included from
69 --- ocaml-4.02.1/otherlibs/systhreads/Makefile.orig 2014-10-03 14:25:00.000000000 +0200
70 +++ ocaml-4.02.1/otherlibs/systhreads/Makefile 2014-11-07 16:21:22.471991426 +0100
72 $(MKLIB) -o threads $(BYTECODE_C_OBJS) $(PTHREAD_LINK)
74 st_stubs_b.o: st_stubs.c st_posix.h
75 - $(BYTECC) -O -I../../byterun $(BYTECCCOMPOPTS) $(SHAREDCCCOMPOPTS) \
76 + $(BYTECC) $(CFLAGS) -I../../byterun $(BYTECCCOMPOPTS) $(SHAREDCCCOMPOPTS) \
78 mv st_stubs.o st_stubs_b.o
81 $(AR) rc libthreadsnat.a $(NATIVECODE_C_OBJS)
83 st_stubs_n.o: st_stubs.c st_posix.h
84 - $(NATIVECC) -O -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) \
85 + $(NATIVECC) $(CFLAGS) -I../../asmrun -I../../byterun $(NATIVECCCOMPOPTS) \
86 $(SHAREDCCCOMPOPTS) -DNATIVE_CODE -DTARGET_$(ARCH) \
87 -DSYS_$(SYSTEM) -c st_stubs.c
88 mv st_stubs.o st_stubs_n.o
89 diff -ur ocaml-3.11.0/otherlibs/systhreads/Makefile.nt ocaml-3.11.0.CFLAGS/otherlibs/systhreads/Makefile.nt
90 --- ocaml-3.11.0/otherlibs/systhreads/Makefile.nt 2007-11-06 16:16:56.000000000 +0100
91 +++ ocaml-3.11.0.CFLAGS/otherlibs/systhreads/Makefile.nt 2009-02-16 12:18:01.285892127 +0100
93 CAMLOPT=../../boot/ocamlrun ../../ocamlopt -I ../../stdlib -I ../win32unix
94 COMPFLAGS=-warn-error A -g
95 MKLIB=../../boot/ocamlrun ../../tools/ocamlmklib
96 -CFLAGS=-I../../byterun $(EXTRACFLAGS)
97 +override CFLAGS += -I../../byterun $(EXTRACFLAGS)
99 CAMLOBJS=thread.cmo mutex.cmo condition.cmo event.cmo threadUnix.cmo
100 CMIFILES=$(CAMLOBJS:.cmo=.cmi)
101 --- ocaml-4.02.1/otherlibs/threads/Makefile.orig 2014-11-06 21:32:19.381500998 +0100
102 +++ ocaml-4.02.1/otherlibs/threads/Makefile 2014-11-07 16:21:47.581990371 +0100
104 include ../../config/Makefile
107 -CFLAGS=-I../../byterun -O $(BYTECCCOMPOPTS) $(SHAREDCCCOMPOPTS) -g
108 +override CFLAGS += -I../../byterun -O $(BYTECCCOMPOPTS) $(SHAREDCCCOMPOPTS) -g
110 CAMLC=$(ROOTDIR)/boot/ocamlrun $(ROOTDIR)/ocamlc -nostdlib \
111 -I $(ROOTDIR)/stdlib -I $(ROOTDIR)/otherlibs/unix
112 diff -ur ocaml-3.11.0/yacc/Makefile ocaml-3.11.0.CFLAGS/yacc/Makefile
113 --- ocaml-3.11.0/yacc/Makefile 2007-02-07 15:49:42.000000000 +0100
114 +++ ocaml-3.11.0.CFLAGS/yacc/Makefile 2009-02-16 12:18:01.289259949 +0100
116 include ../config/Makefile
119 -CFLAGS=-O -DNDEBUG $(BYTECCCOMPOPTS)
120 +override CFLAGS += -DNDEBUG $(BYTECCCOMPOPTS)
122 OBJS= closure.o error.o lalr.o lr0.o main.o mkpar.o output.o reader.o \
123 skeleton.o symtab.o verbose.o warshall.o