diff options
author | Tobias Grosser <tobias@grosser.es> | 2015-02-04 20:55:43 +0000 |
---|---|---|
committer | Tobias Grosser <tobias@grosser.es> | 2015-02-04 20:55:43 +0000 |
commit | 52a25237d894fd5736a90f11df2c5c9391d13fd5 (patch) | |
tree | 2b0e65b1e1de52b56aaa9b04999fe6223d1a7b0f /polly/lib/External/isl/imath/contrib | |
parent | b6472fe3da9a20bcceb7b24af4ce9f0c4e79b254 (diff) | |
download | bcm5719-llvm-52a25237d894fd5736a90f11df2c5c9391d13fd5.tar.gz bcm5719-llvm-52a25237d894fd5736a90f11df2c5c9391d13fd5.zip |
Import isl(+imath) as an external library into Polly
With this patch Polly is always GPL-free (no dependency on GMP any more). As a
result, building and distributing Polly will be easier. Furthermore, there is no
need to tightly coordinate isl and Polly releases anymore.
We import isl b3e0fa7a05d as well as imath 4d707e5ef2. These are the git
versions Polly currently was tested with when using utils/checkout_isl.sh. The
imported libraries are both MIT-style licensed.
We build isl and imath with -fvisibility=hidden to avoid clashes in case other
projects (such as gcc) use conflicting versions of isl. The use of imath can
temporarily reduce compile-time performance of Polly. We will work on
performance tuning in tree.
Patches to isl should be contributed first to the main isl repository and can
then later be reimported to Polly.
This patch is also a prerequisite for the upcoming isl C++ interface.
llvm-svn: 228193
Diffstat (limited to 'polly/lib/External/isl/imath/contrib')
-rw-r--r-- | polly/lib/External/isl/imath/contrib/Makefile.msvc | 84 | ||||
-rw-r--r-- | polly/lib/External/isl/imath/contrib/README | 3 |
2 files changed, 87 insertions, 0 deletions
diff --git a/polly/lib/External/isl/imath/contrib/Makefile.msvc b/polly/lib/External/isl/imath/contrib/Makefile.msvc new file mode 100644 index 00000000000..0eb24fb352a --- /dev/null +++ b/polly/lib/External/isl/imath/contrib/Makefile.msvc @@ -0,0 +1,84 @@ +## +## Name: Makefile.msvc +## Purpose: Makefile for IMath library and associated tools +## for Microsoft Visual Studio 2005 +## Author: Matus Horvath <matus.horvath@nextra.sk> +## +## Copyright (C) 2006 Matus Horvath. Permission has been granted to use, +## modify, and redistribute this file according to the terms of the IMath +## license. +## +## Usage: nmake /f Makefile.msvc +## + +# --- begin configuration section --- + +## Settings for Microsoft Windows systems using nmake. +## To build with debugging, add DEBUG=Y on the "nmake" command line. +CC=cl.exe +LD=link.exe +CFLAGS=$(CFLAGS) -nologo -I. -D_CRT_SECURE_NO_DEPRECATE $(DCFLAGS) +LDFLAGS=$(LDFLAGS) -nologo $(DLDFLAGS) +LIBS=$(DLIBS) + +!if "$(DEBUG)" == "Y" +DCFLAGS=-ZI -Od -DDEBUG=1 -DTRACEABLE_FREE=1 +DLDFLAGS=-DEBUG +#DLIBS=-lefence +!else +DCFLAGS=-O2 -Ob2 +DLDFLAGS= +#DLIBS= +!endif + +## Visual Studio C/C++ 2005 compiler supports "long long" 64-bit type. +CFLAGS=$(CFLAGS) -DUSE_LONG_LONG + +# --- end of configuration section --- +TARGETS=imtest.exe pi.exe bintest.exe findprime.exe +HDRS=imath.h imrat.h iprime.h imdrover.h rsamath.h +SRCS=$(HDRS:.h=.c) $(TARGETS:.exe=.c) +OBJS=$(SRCS:.c=.obj) +EXAMPLES=input.exe basecvt.exe rounding.exe + +.c.obj: + $(CC) $(CFLAGS) -c $< + +all: objs examples test + +objs: $(OBJS) + +# Because Visual Studio does not permit Unix shell syntax, you will +# have to run the tests manually once the "test" target is built. +test: imtest.exe pi.exe +# @ echo "" +# @ echo "Running tests, you should not see any 'FAILED' lines here." +# @ echo "If you do, please see doc.txt for how to report a bug." +# @ echo "" +# (cd tests && ./test.sh) + +$(EXAMPLES): imath.obj imrat.obj iprime.obj examples/$*.obj + @move $*.obj examples/$*.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +examples: $(EXAMPLES) + +imtest.exe: imtest.obj imath.obj imrat.obj imdrover.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +pi.exe: pi.obj imath.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +findprime.exe: findprime.obj imath.obj iprime.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +rtest.exe: rtest.obj imath.obj rsamath.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +bintest.exe: imath.obj bintest.obj + $(LD) $(LDFLAGS) -out:$@ $** $(LIBS) + +clean: + del /q /f *.exe *.obj examples\*.obj + +# End of Makefile.msvc diff --git a/polly/lib/External/isl/imath/contrib/README b/polly/lib/External/isl/imath/contrib/README new file mode 100644 index 00000000000..b699944123b --- /dev/null +++ b/polly/lib/External/isl/imath/contrib/README @@ -0,0 +1,3 @@ +The files in this directory have been contributed to the IMath project +by other authors. + |