* [gentoo-commits] gentoo commit in src/patchsets/ocaml/4.00.0: 010_all_execstacks.patch 020_all_configure.patch 040_all_yaccldflags.patch 050_all_objinfoldflags.patch series
@ 2012-06-10 20:06 Alexis Ballier (aballier)
0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier (aballier) @ 2012-06-10 20:06 UTC (permalink / raw
To: gentoo-commits
aballier 12/06/10 20:06:19
Added: 010_all_execstacks.patch 020_all_configure.patch
040_all_yaccldflags.patch
050_all_objinfoldflags.patch series
Log:
add patches for 4.00.0
Revision Changes Path
1.1 src/patchsets/ocaml/4.00.0/010_all_execstacks.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/010_all_execstacks.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/010_all_execstacks.patch?rev=1.1&content-type=text/plain
Index: 010_all_execstacks.patch
===================================================================
Fix the EXEC_STACK in ocaml compiled binaries (#153382)
Index: ocaml-4.00.0+beta2/asmrun/sparc.S
===================================================================
--- ocaml-4.00.0+beta2.orig/asmrun/sparc.S
+++ ocaml-4.00.0+beta2/asmrun/sparc.S
@@ -358,3 +358,8 @@ caml_system__frametable:
.type caml_raise_exception, #function
.type caml_system__frametable, #object
#endif
+
+#ifdef __ELF__
+.section .note.GNU-stack,"",%progbits
+#endif
+
Index: ocaml-4.00.0+beta2/asmcomp/arm/emit.mlp
===================================================================
--- ocaml-4.00.0+beta2.orig/asmcomp/arm/emit.mlp
+++ ocaml-4.00.0+beta2/asmcomp/arm/emit.mlp
@@ -895,6 +895,13 @@ let data l =
` .data\n`;
List.iter emit_item l
+(* Mark stack as non executable *)
+let nx_stack() =
+ if Config.system = "linux" then
+ ` .section .note.GNU-stack,\"\",%progbits\n`
+
+
+
(* Beginning / end of an assembly file *)
let begin_assembly() =
@@ -926,6 +933,7 @@ let begin_assembly() =
`{emit_symbol lbl_begin}:\n`
let end_assembly () =
+ nx_stack();
let lbl_end = Compilenv.make_symbol (Some "code_end") in
` .text\n`;
` .globl {emit_symbol lbl_end}\n`;
Index: ocaml-4.00.0+beta2/asmcomp/power/emit.mlp
===================================================================
--- ocaml-4.00.0+beta2.orig/asmcomp/power/emit.mlp
+++ ocaml-4.00.0+beta2/asmcomp/power/emit.mlp
@@ -930,6 +930,12 @@ let data l =
emit_string data_space;
List.iter emit_item l
+(* Mark stack as non executable *)
+let nx_stack() =
+ if Config.system = "elf" then
+ ` .section .note.GNU-stack,\"\",%progbits\n`
+
+
(* Beginning / end of an assembly file *)
let begin_assembly() =
@@ -946,6 +952,7 @@ let begin_assembly() =
`{emit_symbol lbl_begin}:\n`
let end_assembly() =
+ nx_stack();
if pic_externals then
(* Emit the pointers to external functions *)
StringSet.iter emit_external !external_functions;
Index: ocaml-4.00.0+beta2/asmcomp/sparc/emit.mlp
===================================================================
--- ocaml-4.00.0+beta2.orig/asmcomp/sparc/emit.mlp
+++ ocaml-4.00.0+beta2/asmcomp/sparc/emit.mlp
@@ -745,6 +745,12 @@ let data l =
` .data\n`;
List.iter emit_item l
+(* Mark stack as non executable *)
+let nx_stack() =
+ if Config.system = "linux" then
+ ` .section .note.GNU-stack,\"\",%progbits\n`
+
+
(* Beginning / end of an assembly file *)
let begin_assembly() =
@@ -758,6 +764,7 @@ let begin_assembly() =
`{emit_symbol lbl_begin}:\n`
let end_assembly() =
+ nx_stack();
` .text\n`;
let lbl_end = Compilenv.make_symbol (Some "code_end") in
` .global {emit_symbol lbl_end}\n`;
Index: ocaml-4.00.0+beta2/asmrun/power-elf.S
===================================================================
--- ocaml-4.00.0+beta2.orig/asmrun/power-elf.S
+++ ocaml-4.00.0+beta2/asmrun/power-elf.S
@@ -424,3 +424,8 @@ caml_system__frametable:
.long .L105 + 4 /* return address into callback */
.short -1 /* negative size count => use callback link */
.short 0 /* no roots here */
+
+#ifdef __ELF__
+.section .note.GNU-stack,"",%progbits
+#endif
+
Index: ocaml-4.00.0+beta2/asmrun/arm.S
===================================================================
--- ocaml-4.00.0+beta2.orig/asmrun/arm.S
+++ ocaml-4.00.0+beta2/asmrun/arm.S
@@ -446,3 +446,7 @@ caml_system__frametable:
.align 2
.type caml_system__frametable, %object
.size caml_system__frametable, .-caml_system__frametable
+
+#ifdef __ELF__
+.section .note.GNU-stack,"",%progbits
+#endif
1.1 src/patchsets/ocaml/4.00.0/020_all_configure.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/020_all_configure.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/020_all_configure.patch?rev=1.1&content-type=text/plain
Index: 020_all_configure.patch
===================================================================
The configure script doesn't inherit previous defined variables,
overwriting previous declarations of bytecccompopts, bytecclinkopts,
nativecccompopts and nativecclinkopts. Reported upstream as issue 0004267.
Index: ocaml-4.00.0+beta2/configure
===================================================================
--- ocaml-4.00.0+beta2.orig/configure
+++ ocaml-4.00.0+beta2/configure
@@ -255,7 +255,7 @@ esac
# Configure the bytecode compiler
bytecc="$cc"
-mkexe="\$(BYTECC)"
+mkexe="\$(BYTECC) \$(BYTECCLINKOPTS)"
mkexedebugflag="-g"
bytecccompopts=""
bytecclinkopts=""
@@ -1565,7 +1565,15 @@ fi
# Final twiddling of compiler options to work around known bugs
+bytecccompopts="$CFLAGS $bytecccompopts"
+bytecclinkopts="$LDFLAGS $bytecclinkopts"
+natdynlinkopts="$LDFLAGS $natdynlinkopts"
+nativeccrawlinkopts="$RAW_LDFLAGS $nativecclinkopts"
+nativecclinkopts="$LDFLAGS $nativecclinkopts"
+nativecccompopts="$CFLAGS $nativecccompopts"
nativeccprofopts="$nativecccompopts"
+mksharedlib="$mksharedlib $LDFLAGS"
+mkmaindll="$mkmaindll $LDFLAGS"
case "$buggycc" in
gcc.2.96)
bytecccompopts="$bytecccompopts -fomit-frame-pointer"
@@ -1601,6 +1609,7 @@ echo "NATIVECC=$nativecc" >> Makefile
echo "NATIVECCCOMPOPTS=$nativecccompopts" >> Makefile
echo "NATIVECCPROFOPTS=$nativeccprofopts" >> Makefile
echo "NATIVECCLINKOPTS=$nativecclinkopts" >> Makefile
+echo "NATIVECCRAWLINKOPTS=$nativeccrawlinkopts" >> Makefile
echo "NATIVECCRPATH=$nativeccrpath" >> Makefile
echo "NATIVECCLIBS=$cclibs $dllib" >> Makefile
echo "ASM=$as" >> Makefile
@@ -1613,7 +1622,7 @@ echo "DEBUGGER=$debugger" >> Makefile
echo "CC_PROFILE=$cc_profile" >> Makefile
echo "SYSTHREAD_SUPPORT=$systhread_support" >> Makefile
echo "PARTIALLD=$partialld" >> Makefile
-echo "PACKLD=\$(PARTIALLD) \$(NATIVECCLINKOPTS) -o " \
+echo "PACKLD=\$(PARTIALLD) \$(NATIVECCRAWLINKOPTS) -o " \
| sed -e 's/ $/\\ /' >> Makefile
echo "DLLCCCOMPOPTS=$dllccompopts" >> Makefile
echo "IFLEXDIR=$iflexdir" >> Makefile
1.1 src/patchsets/ocaml/4.00.0/040_all_yaccldflags.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/040_all_yaccldflags.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/040_all_yaccldflags.patch?rev=1.1&content-type=text/plain
Index: 040_all_yaccldflags.patch
===================================================================
Respect LDFLAGS for ocamlyacc
http://caml.inria.fr/mantis/view.php?id=4698
Index: ocaml-4.00.0+beta2/yacc/Makefile
===================================================================
--- ocaml-4.00.0+beta2.orig/yacc/Makefile
+++ ocaml-4.00.0+beta2/yacc/Makefile
@@ -25,7 +25,7 @@ OBJS= closure.o error.o lalr.o lr0.o mai
all: ocamlyacc$(EXE)
ocamlyacc$(EXE): $(OBJS)
- $(CC) $(CFLAGS) $(CCLINKFLAGS) -o ocamlyacc $(OBJS)
+ $(CC) $(LDFLAGS) $(CFLAGS) $(CCLINKFLAGS) -o ocamlyacc $(OBJS)
version.h : ../VERSION
echo "#define OCAML_VERSION \"`sed -e 1q ../VERSION`\"" >version.h
1.1 src/patchsets/ocaml/4.00.0/050_all_objinfoldflags.patch
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/050_all_objinfoldflags.patch?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/050_all_objinfoldflags.patch?rev=1.1&content-type=text/plain
Index: 050_all_objinfoldflags.patch
===================================================================
Index: ocaml-4.00.0+beta2/tools/Makefile.shared
===================================================================
--- ocaml-4.00.0+beta2.orig/tools/Makefile.shared
+++ ocaml-4.00.0+beta2/tools/Makefile.shared
@@ -268,7 +268,7 @@ beforedepend:: opnames.ml
# Display info on compiled files
objinfo_helper$(EXE): objinfo_helper.c ../config/s.h
- $(BYTECC) -o objinfo_helper$(EXE) $(BYTECCCOMPOPTS) \
+ $(MKEXE) -o objinfo_helper$(EXE) $(BYTECCCOMPOPTS) \
objinfo_helper.c $(LIBBFD_LINK)
OBJINFO=../utils/misc.cmo ../utils/config.cmo \
1.1 src/patchsets/ocaml/4.00.0/series
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/series?rev=1.1&view=markup
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/ocaml/4.00.0/series?rev=1.1&content-type=text/plain
Index: series
===================================================================
010_all_execstacks.patch
020_all_configure.patch
040_all_yaccldflags.patch
050_all_objinfoldflags.patch
^ permalink raw reply [flat|nested] 2+ messages in thread
* [gentoo-commits] gentoo commit in src/patchsets/ocaml/4.00.0: 010_all_execstacks.patch 020_all_configure.patch 040_all_yaccldflags.patch 050_all_objinfoldflags.patch series
@ 2017-02-21 14:17 Alexis Ballier (aballier)
0 siblings, 0 replies; 2+ messages in thread
From: Alexis Ballier (aballier) @ 2017-02-21 14:17 UTC (permalink / raw
To: gentoo-commits
aballier 17/02/21 14:17:27
Removed: 010_all_execstacks.patch 020_all_configure.patch
040_all_yaccldflags.patch
050_all_objinfoldflags.patch series
Log:
Remove outdated ocaml patches
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-02-21 14:17 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-02-21 14:17 [gentoo-commits] gentoo commit in src/patchsets/ocaml/4.00.0: 010_all_execstacks.patch 020_all_configure.patch 040_all_yaccldflags.patch 050_all_objinfoldflags.patch series Alexis Ballier (aballier)
-- strict thread matches above, loose matches on Subject: below --
2012-06-10 20:06 Alexis Ballier (aballier)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox