Merge pull request #1115 from dra27/travis-bfd

Remove BFD warning on Travis
master
Gabriel Scherer 2017-03-23 20:00:41 -04:00 committed by GitHub
commit 55808123c3
5 changed files with 164 additions and 4 deletions

View File

@ -26,3 +26,7 @@ matrix:
- env: CI_KIND=tests
allow_failures:
- env: CI_KIND=tests
addons:
apt:
packages:
- binutils-dev

26
configure vendored
View File

@ -1790,11 +1790,29 @@ echo "X11_LINK=$x11_link" >> Makefile
# Look for BFD library
if sh ./hasgot -DPACKAGE=ocaml -i bfd.h && \
sh ./hasgot -DPACKAGE=ocaml -lbfd -ldl -liberty -lz bfd_openr; then
if $shared_libraries_supported && ./hasgot -DPACKAGE=ocaml -i bfd.h ; then
inf "BFD library found."
echo "#define HAS_LIBBFD" >> s.h
echo "LIBBFD_LINK=-lbfd -ldl -liberty -lz" >> Makefile
if sh ./hasgot -DPACKAGE=ocaml -lbfd bfd_openr; then
LIBBFD_LINK="-lbfd"
inf "BFD links with $LIBBFD_LINK"
echo "#define HAS_LIBBFD" >> s.h
elif sh ./hasgot -DPACKAGE=ocaml -lbfd -ldl bfd_openr; then
LIBBFD_LINK="-lbfd -ldl"
inf "BFD links with $LIBBFD_LINK"
echo "#define HAS_LIBBFD" >> s.h
elif sh ./hasgot -DPACKAGE=ocaml -lbfd -ldl -liberty bfd_openr; then
LIBBFD_LINK="-lbfd -ldl -liberty"
inf "BFD links with $LIBBFD_LINK"
echo "#define HAS_LIBBFD" >> s.h
elif sh ./hasgot -DPACKAGE=ocaml -lbfd -ldl -liberty -lz bfd_openr; then
LIBBFD_LINK="-lbfd -ldl -liberty -lz"
inf "BFD links with $LIBBFD_LINK"
echo "#define HAS_LIBBFD" >> s.h
else
wrn "Could not determine link options for the BFD library"
LIBBFD_LINK=
fi
echo "LIBBFD_LINK=$LIBBFD_LINK" >> Makefile
echo LIBBFD_INCLUDE= >>Makefile
elif sh ./hasgot -DPACKAGE=ocaml -I/opt/local/include -i bfd.h && \
sh ./hasgot -DPACKAGE=ocaml -L/opt/local/lib -lbfd -ldl \

View File

@ -0,0 +1,45 @@
BASEDIR=../..
LD_PATH=
.PHONY: default
default:
@if ! $(SUPPORTS_SHARED_LIBRARIES) || $(BYTECODE_ONLY) ; then \
echo 'skipped (.cmxs not built)'; \
elif ! grep -q HAS_LIBBFD $(TOPDIR)/config/s.h ; then \
echo 'skipped (BFD library not available)'; \
else \
case " $(OTHERLIBRARIES) " in \
*' unix '* | *' win32unix '*) \
$(SET_LD_PATH) OCAMLLIB=$(TOPDIR)/tools $(MAKE) run;; \
*) echo 'skipped (unix.cmxs not available)';; \
esac \
fi
.PHONY: run
run:
@printf " ... testing 'ocamlobjinfo'"
@rm -f $(MAIN_MODULE).result
@$(OCAMLRUN) `$(CYGPATH) $(TOPDIR)/tools/ocamlobjinfo$(EXE)` \
$(OTOPDIR)/otherlibs/$(UNIXLIBVAR)unix/unix.cmxs \
> test.raw.result 2>&1 \
&& sed -e 's/\([^0-9a-z]\)[0-9a-z]\{32\}\([^0-9a-z]\|$$\)/\1<MD5>\2/' \
-e 's/File .*otherlibs/File otherlibs/' \
test.raw.result > test.result \
&& $(DIFF) test.$(BACKEND).reference test.result > /dev/null \
&& echo " => passed" || echo " => failed"
.PHONY: promote
promote: defaultpromote
.PHONY: clean
clean: defaultclean
@rm -f *.result
include $(BASEDIR)/makefiles/Makefile.common
ifeq "$(FLAMBDA)" "true"
BACKEND=flambda
else
BACKEND=clambda
endif

View File

@ -0,0 +1,45 @@
File otherlibs/unix/unix.cmxs
Name: Unix
CRC of implementation: <MD5>
Globals defined:
Unix
Interfaces imported:
<MD5> Unix
<MD5> Uchar
<MD5> Sys
<MD5> String
<MD5> Printf
<MD5> Printexc
<MD5> Pervasives
<MD5> List
<MD5> Hashtbl
<MD5> Complex
<MD5> CamlinternalFormatBasics
<MD5> CamlinternalBigarray
<MD5> Callback
<MD5> Bytes
<MD5> Buffer
<MD5> Array
Implementations imported:
<MD5> Sys
<MD5> Printf
<MD5> Printexc
<MD5> Pervasives
<MD5> List
<MD5> Hashtbl
<MD5> Callback
<MD5> Bytes
<MD5> Array
Name: UnixLabels
CRC of implementation: <MD5>
Globals defined:
UnixLabels
Interfaces imported:
<MD5> UnixLabels
<MD5> Unix
<MD5> Pervasives
<MD5> Complex
<MD5> CamlinternalFormatBasics
<MD5> CamlinternalBigarray
Implementations imported:
<MD5> Unix

View File

@ -0,0 +1,48 @@
File otherlibs/unix/unix.cmxs
Name: Unix
CRC of implementation: <MD5>
Globals defined:
Unix
Interfaces imported:
<MD5> Unix
<MD5> Uchar
<MD5> Sys
<MD5> String
<MD5> Printf
<MD5> Printexc
<MD5> Pervasives
<MD5> List
<MD5> Hashtbl
<MD5> Complex
<MD5> CamlinternalFormatBasics
<MD5> CamlinternalBigarray
<MD5> Callback
<MD5> Bytes
<MD5> Buffer
<MD5> Array
Implementations imported:
<MD5> CamlinternalFormat
<MD5> Random
<MD5> CamlinternalLazy
<MD5> Hashtbl
<MD5> Array
<MD5> List
<MD5> Bytes
<MD5> Pervasives
<MD5> Sys
<MD5> Printexc
<MD5> Printf
<MD5> Callback
Name: UnixLabels
CRC of implementation: <MD5>
Globals defined:
UnixLabels
Interfaces imported:
<MD5> UnixLabels
<MD5> Unix
<MD5> Pervasives
<MD5> Complex
<MD5> CamlinternalFormatBasics
<MD5> CamlinternalBigarray
Implementations imported:
<MD5> Unix