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.02.2/configure =================================================================== --- ocaml-4.02.2.orig/configure +++ ocaml-4.02.2/configure @@ -314,7 +314,7 @@ esac # Configure the bytecode compiler bytecc="$cc" -mkexe="\$(BYTECC)" +mkexe="\$(BYTECC) \$(BYTECCLINKOPTS)" mkexedebugflag="-g" bytecccompopts="" bytecclinkopts="" @@ -1694,7 +1694,15 @@ sharedcccompopts="-O $sharedcccompopts" # 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" @@ -1730,6 +1738,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 @@ -1741,7 +1750,7 @@ echo "OTHERLIBRARIES=$otherlibraries" >> 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