23119743 Upgrade ISL to 0.18
authorNorm Jacobs <Norm.Jacobs@Oracle.COM>
Wed, 11 Jan 2017 23:54:04 -0600
changeset 7814 0ef925f9e813
parent 7813 d18938ebcb0d
child 7815 bfb6aad28778
23119743 Upgrade ISL to 0.18
components/isl/Makefile
components/isl/Solaris/isl.pc
components/isl/isl.license
components/isl/isl.p5m
components/isl/patches/000-codegen_test.sh.in.patch
components/isl/patches/001-ltmain.sh.patch
components/isl/test/results-isl.master
--- a/components/isl/Makefile	Wed Mar 29 13:17:19 2017 -0700
+++ b/components/isl/Makefile	Wed Jan 11 23:54:04 2017 -0600
@@ -22,137 +22,54 @@
 #
 # Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
 #
+COMPILER=	gcc
 BUILD_BITS= 64_and_32
 include ../../make-rules/shared-macros.mk
 
 COMPONENT_NAME=         isl
-COMPONENT_VERSION=      0.12.2
+COMPONENT_VERSION=      0.18
 COMPONENT_PROJECT_URL=  http://freecode.com/projects/isl
 COMPONENT_ARCHIVE=      $(COMPONENT_SRC).tar.bz2
 COMPONENT_ARCHIVE_HASH= \
-	sha256:f4b3dbee9712850006e44f0db2103441ab3d13b406f77996d1df19ee89d11fb4
+	sha256:6b8b0fd7f81d0a957beb3679c81bbb34ccc7568d5682844d8924424a0dadcb1b
 COMPONENT_ARCHIVE_URL=  http://isl.gforge.inria.fr/$(COMPONENT_ARCHIVE)
 COMPONENT_BUGDB=        utility/gnu-compiler
 COMPONENT_ANITYA_ID=	13286
 
-TPNO=			23799
+TPNO=			33315
 
 include $(WS_MAKE_RULES)/common.mk
 
-# For the DEBUG_BUILD macro please see RFE/Bug 22185118:
-# https://bug.oraclecorp.com/pls/bug/webbug_edit.edit_info_top?rptno=22185118
-# For the GCC CFLAGS/CXXFLAGS please see:
-# - RFE/Bug 22185134:
-# https://bug.oraclecorp.com/pls/bug/webbug_edit.edit_info_top?rptno=22185134
-# - RFE/Bug 22185167:
-# https://bug.oraclecorp.com/pls/bug/webbug_edit.edit_info_top?rptno=22185167
-
-COMPILER = gcc
-
-PATCH_LEVEL = 0
-DEBUG_BUILD := 0
-PATH="$(GNUBIN):/usr/perl5/bin:$(USRBINDIR):$(USRSBINDIR)"
-
-ISL_GCC_ARCH_i386 = -mtune=opteron -march=opteron
-ISL_GCC_ARCH_i386 += -fno-strict-aliasing -fno-omit-frame-pointer
-ISL_GCC_ARCH_sparc = -mtune=ultrasparc3 -mcpu=ultrasparc3 -mvis2 -mhard-float
-ISL_GCC_ARCH_sparc += -fno-strict-aliasing -mno-unaligned-doubles -mimpure-text
-ISL_GCC_ARCH = $(ISL_GCC_ARCH_$(MACH))
-ISL_GCC_ARCH += -Wall -Wextra -Wcast-qual -Wcast-align
+COMPONENT_PREP_ACTION = (cd $(@D) ; $(AUTORECONF) -fiv)
 
-CFLAGS += $(CC_BITS)
-ifeq ($(DEBUG_BUILD),1)
-  CFLAGS += -g
-endif
-CFLAGS += -std=c99
-CFLAGS += -D__C99FEATURES__
-CFLAGS += -D_STDC_C99
-CFLAGS += $(CPP_XPG6MODE)
-CFLAGS += $(ISL_GCC_ARCH)
-
-CXXFLAGS += $(CC_BITS)
-ifeq ($(DEBUG_BUILD),1)
-  CXXFLAGS += -g
-endif
-CXXFLAGS += -std=c++03
-CXXFLAGS += $(CPP_XPG5MODE)
-CXXFLAGS += $(ISL_GCC_ARCH)
-
-CPPFLAGS += $(CPP_LARGEFILES)
-CPPFLAGS += $(CPP_POSIX)
-CPPFLAGS += `pkg-config --cflags libgmp`
-CPPFLAGS += `pkg-config --cflags libmpfr`
-
-CONFIGURE_ENV +=	LD_OPTIONS="$(LD_OPTIONS)"
-CONFIGURE_ENV +=	CCLD="$(CC) $(CFLAGS) $(LDFLAGS)"
-CONFIGURE_ENV +=	LIBS="$(LIBS)"
-CONFIGURE_ENV +=	PATH="$(PATH)"
+# When gmp.h is installed in the default path, this can be removed.
+CFLAGS +=	$(shell pkg-config --cflags libgmp)
 
 CONFIGURE_OPTIONS  +=		--localstatedir=$(VARDIR)
 CONFIGURE_OPTIONS  +=		--infodir=$(CONFIGURE_INFODIR)
-CONFIGURE_OPTIONS  +=		--disable-option-checking
-CONFIGURE_OPTIONS  +=		--disable-silent-rules
 CONFIGURE_OPTIONS  +=		--enable-shared=yes
 CONFIGURE_OPTIONS  +=		--enable-static=no
 CONFIGURE_OPTIONS  +=		--disable-libtool-lock
-CONFIGURE_OPTIONS  +=		--with-gcc-arch="$(ISL_GCC_ARCH)"
 CONFIGURE_OPTIONS  +=		--with-pic
-CONFIGURE_OPTIONS  +=		--with-int=gmp
 CONFIGURE_OPTIONS  +=		--with-gmp=system
-CONFIGURE_OPTIONS  +=		--with-gmp-prefix=$(CONFIGURE_PREFIX)
 CONFIGURE_OPTIONS  +=		--with-clang=no
 
-COMPONENT_TEST_ENV +=	libtool_install_magic='%%%MAGIC variable%%%'
-COMPONENT_TEST_ENV +=	libtool_execute_magic='%%%MAGIC variable%%%'
-COMPONENT_TEST_ENV +=	PATH="$(GNUBIN):$(PATH)"
-
-COMPONENT_POST_INSTALL_ACTION = \
-	( cd $(PROTOUSRDIR) ; \
-	  $(PYTHON) -m compileall . ; \
-	  $(MKDIR) $(PROTOUSRLIBDIR)/pkgconfig ; \
-	  $(CP) $(COMPONENT_DIR)/Solaris/isl.pc \
-	    $(PROTOUSRLIBDIR)/pkgconfig/ ; \
-	  $(GSED) -i 's^LIBDIR^$(USRLIBDIR)^g' \
-	    $(PROTOUSRLIBDIR)/pkgconfig/isl.pc ; \
-	  $(MKDIR) $(PROTOUSRLIBDIR64)/pkgconfig ; \
-	  $(CP) $(COMPONENT_DIR)/Solaris/isl.pc \
-	    $(PROTOUSRLIBDIR64)/pkgconfig/ ; \
-	  $(GSED) -i 's^LIBDIR^$(USRLIBDIR64)^g' \
-	    $(PROTOUSRLIBDIR64)/pkgconfig/isl.pc )
+COMPONENT_TEST_ENV +=	-i
 
 COMPONENT_TEST_MASTER = \
 	$(COMPONENT_TEST_RESULTS_DIR)/results-isl.master
 
 COMPONENT_TEST_TRANSFORMS += \
-     '-e "/libtool/d"' \
-     '-e "/-m32/d"' \
-     '-e "/-m64/d"' \
-     '-e "/ld: warning/d"' \
-     '-e "/warning/d"' \
-     '-e "/prototype:/d"' \
-     '-e "/argument/d"' \
-     '-e "/Entering/d"' \
-     '-e "/Leaving/d"' \
-     '-e "/check-TESTS/d"' \
-     '-e "/all-recursive/d"' \
-     '-e "/test_input/d"' \
-     '-e "/\.pip$$/d"' \
-     '-e "/\.pwqp$$/d"' \
-     '-e "/Making all/d"' \
-     '-e "/Making check/d"' \
-     '-e "/Nothing to be done/d"' \
-     '-e "s/[0-9]\{1,\}\.[0-9]\{1,\} s, //g"' \
-     '-e "s^[0-9]\{1,\} kB/s^^g"'  \
-     '-e "s^[0-9]\{1,\}  kB/s^^g"'  \
-     '-e "s^[0-9]\{1,\}\.[0-9]\{1,\}  MB/s^^g"' \
-     '-e "s^[0-9]\{1,\}\.[0-9]\{1,\} MB/s^^g"' \
-     '-e "s/([0-9]\{1,\} B)//g"' \
-     '-e "s/([0-9]\{1,\}  B)//g"' \
-     '-e "s/copied,/copied/g"'  \
-     '-e "s/ \{1,\}copied/ copied/g"'  \
-     '-e "s/copied $$/copied/g"'  \
-     '-e "s/copied [0-9]\{1,\}\./copied/g"'
-
-ASLR_MODE = $(ASLR_NOT_APPLICABLE)
+	'-e "s/^make\[[0-9]\{1,\}\]/make/g"' \
+	'-n ' \
+	'-e "/make:.*directory/p" ' \
+	'-e "/Testsuite /p" ' \
+	'-e "/tversion\]/p" ' \
+	'-e "/PASS/p" ' \
+	'-e "/FAIL/p" ' \
+	'-e "/SKIP/p" ' \
+	'-e "/ERROR/p" ' \
+	'-e "/=====/p" ' \
+	'-e "/TOTAL/p" '
 
 REQUIRED_PACKAGES += library/gmp
--- a/components/isl/Solaris/isl.pc	Wed Mar 29 13:17:19 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,18 +0,0 @@
-prefix=/usr
-exec_prefix=${prefix}
-bindir=/usr/bin
-libdir=LIBDIR
-datarootdir=${prefix}/share
-datadir=${datarootdir}
-sysconfdir=${prefix}/etc
-includedir=${prefix}/include
-package=isl
-suffix=
-
-Name: isl
-Description: The Integer Set Library
-Version: 0.12.2
-Requires: 
-Libs: -lisl -lgmp
-Cflags: -I${includedir}
-
--- a/components/isl/isl.license	Wed Mar 29 13:17:19 2017 -0700
+++ b/components/isl/isl.license	Wed Jan 11 23:54:04 2017 -0600
@@ -1,8 +1,13 @@
-Copyright 2005-2012 Universiteit Leiden
+Copyright (C) 2002-2007 Michael J. Fromberger, All Rights Reserved.
+Copyright (c) 2012 Qualcomm Innovation Center, Inc. All rights reserved.
+Copyright 2006-2012 Universiteit Leiden
 Copyright 2008-2009 Katholieke Universiteit Leuven
 Copyright 2010-2011 INRIA Saclay
-Copyright 2012-2013 Ecole Normale Superieure
-Copyright 2011 Sven Verdoolaege
+Copyright 2012-2014 Ecole Normale Superieure
+Copyright 2014-2015 INRIA Rocquencourt
+Copyright 2015      INRIA Paris-Rocquencourt
+Copyright 2011-2016 Sven Verdoolaege
+Copyright 2016      INRIA Paris
 
 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the "Software"),
--- a/components/isl/isl.p5m	Wed Mar 29 13:17:19 2017 -0700
+++ b/components/isl/isl.p5m	Wed Jan 11 23:54:04 2017 -0600
@@ -20,7 +20,7 @@
 #
 
 #
-# Copyright (c) 2015, Oracle and/or its affiliates. All rights reserved.
+# Copyright (c) 2015, 2017, Oracle and/or its affiliates. All rights reserved.
 #
 set name=pkg.fmri \
     value=pkg:/library/isl@$(IPS_COMPONENT_VERSION),$(BUILD_VERSION)
@@ -41,23 +41,45 @@
 file path=usr/include/isl/arg.h
 file path=usr/include/isl/ast.h
 file path=usr/include/isl/ast_build.h
+file path=usr/include/isl/ast_type.h
 file path=usr/include/isl/band.h
-file path=usr/include/isl/blk.h
-file path=usr/include/isl/config.h
 file path=usr/include/isl/constraint.h
 file path=usr/include/isl/ctx.h
-file path=usr/include/isl/dim.h
+file path=usr/include/isl/deprecated/aff_int.h
+file path=usr/include/isl/deprecated/ast_int.h
+file path=usr/include/isl/deprecated/constraint_int.h
+file path=usr/include/isl/deprecated/ilp_int.h
+file path=usr/include/isl/deprecated/int.h
+file path=usr/include/isl/deprecated/map_int.h
+file path=usr/include/isl/deprecated/mat_int.h
+file path=usr/include/isl/deprecated/point_int.h
+file path=usr/include/isl/deprecated/polynomial_int.h
+file path=usr/include/isl/deprecated/set_int.h
+file path=usr/include/isl/deprecated/union_map_int.h
+file path=usr/include/isl/deprecated/val_int.h
+file path=usr/include/isl/deprecated/vec_int.h
 file path=usr/include/isl/flow.h
 file path=usr/include/isl/hash.h
+file path=usr/include/isl/hmap.h
+file path=usr/include/isl/hmap_templ.c
 file path=usr/include/isl/id.h
+file path=usr/include/isl/id_to_ast_expr.h
+file path=usr/include/isl/id_to_id.h
+file path=usr/include/isl/id_to_pw_aff.h
 file path=usr/include/isl/ilp.h
-file path=usr/include/isl/int.h
 file path=usr/include/isl/list.h
 file path=usr/include/isl/local_space.h
 file path=usr/include/isl/lp.h
 file path=usr/include/isl/map.h
+file path=usr/include/isl/map_to_basic_set.h
 file path=usr/include/isl/map_type.h
 file path=usr/include/isl/mat.h
+file path=usr/include/isl/maybe.h
+file path=usr/include/isl/maybe_ast_expr.h
+file path=usr/include/isl/maybe_basic_set.h
+file path=usr/include/isl/maybe_id.h
+file path=usr/include/isl/maybe_pw_aff.h
+file path=usr/include/isl/maybe_templ.h
 file path=usr/include/isl/multi.h
 file path=usr/include/isl/obj.h
 file path=usr/include/isl/options.h
@@ -65,8 +87,10 @@
 file path=usr/include/isl/polynomial.h
 file path=usr/include/isl/polynomial_type.h
 file path=usr/include/isl/printer.h
+file path=usr/include/isl/printer_type.h
 file path=usr/include/isl/schedule.h
-file path=usr/include/isl/seq.h
+file path=usr/include/isl/schedule_node.h
+file path=usr/include/isl/schedule_type.h
 file path=usr/include/isl/set.h
 file path=usr/include/isl/set_type.h
 file path=usr/include/isl/space.h
@@ -78,21 +102,22 @@
 file path=usr/include/isl/union_set_type.h
 file path=usr/include/isl/val.h
 file path=usr/include/isl/val_gmp.h
-file path=usr/include/isl/val_int.h
 file path=usr/include/isl/vec.h
 file path=usr/include/isl/version.h
 file path=usr/include/isl/vertices.h
-link path=usr/lib/$(MACH64)/libisl.so target=libisl.so.10.2.2
-link path=usr/lib/$(MACH64)/libisl.so.10 target=libisl.so.10.2.2
-file path=usr/lib/$(MACH64)/libisl.so.10.2.2
+link path=usr/lib/$(MACH64)/libisl.so target=libisl.so.15.3.0
+link path=usr/lib/$(MACH64)/libisl.so.10 target=libisl.so.15.3.0
+link path=usr/lib/$(MACH64)/libisl.so.15 target=libisl.so.15.3.0
+file path=usr/lib/$(MACH64)/libisl.so.15.3.0
 file path=usr/lib/$(MACH64)/pkgconfig/isl.pc
-link path=usr/lib/libisl.so target=libisl.so.10.2.2
-link path=usr/lib/libisl.so.10 target=libisl.so.10.2.2
-file path=usr/lib/libisl.so.10.2.2
+link path=usr/lib/libisl.so target=libisl.so.15.3.0
+link path=usr/lib/libisl.so.10 target=libisl.so.15.3.0
+link path=usr/lib/libisl.so.15 target=libisl.so.15.3.0
+file path=usr/lib/libisl.so.15.3.0
 file path=usr/lib/pkgconfig/isl.pc
-file usr/lib/$(MACH64)/libisl.so.10.2.2-gdb.py \
-    path=usr/share/gdb/auto-load/usr/lib/$(MACH64)/libisl.so.10.2.2-gdb.py
-file usr/lib/libisl.so.10.2.2-gdb.py \
-    path=usr/share/gdb/auto-load/usr/lib/libisl.so.10.2.2-gdb.py
+file usr/lib/$(MACH64)/libisl.so.15.3.0-gdb.py \
+    path=usr/share/gdb/auto-load/usr/lib/$(MACH64)/libisl.so.15.3.0-gdb.py
+file usr/lib/libisl.so.15.3.0-gdb.py \
+    path=usr/share/gdb/auto-load/usr/lib/libisl.so.15.3.0-gdb.py
 license isl.license license=MIT
 
--- a/components/isl/patches/000-codegen_test.sh.in.patch	Wed Mar 29 13:17:19 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,23 +0,0 @@
-# These two env vars are needed for running the ISL test harness
-# and making it do the "right thing".
-# bash --noprofile is documented.
-# Not for upstream. They don't run their test harness the way we do.
---- codegen_test.sh.in	2013-09-13 10:23:28.000000000 -0700
-+++ codegen_test.sh.in	2015-07-23 08:12:25.013762502 -0700
-@@ -1,10 +1,15 @@
--#!/bin/sh
-+#!/bin/bash --noprofile
-+
-+set -o posix
- 
- EXEEXT=@EXEEXT@
- srcdir=@srcdir@
- 
- failed=0
- 
-+export libtool_install_magic='not set'
-+export libtool_execute_magic='not set'
-+
- for i in $srcdir/test_inputs/codegen/*.in \
- 		$srcdir/test_inputs/codegen/cloog/*.in \
- 		$srcdir/test_inputs/codegen/omega/*.in \
--- a/components/isl/patches/001-ltmain.sh.patch	Wed Mar 29 13:17:19 2017 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,26 +0,0 @@
-# Set the LD_LIBRARY_PATH to an empty string because it affects
-# the way the test harness scripts are being run.
-# bash --noprofile is documented.
-# Not for upstream. They don't run their test harness the way we do.
---- ltmain.sh	2014-10-26 00:35:44.000000000 -0700
-+++ ltmain.sh	2015-07-16 09:51:16.867440561 -0700
-@@ -5094,7 +5094,9 @@
- 	func_emit_wrapper_arg1=${1-no}
- 
- 	$ECHO "\
--#! $SHELL
-+#!/bin/bash --noprofile
-+
-+set -o posix
- 
- # $output - temporary wrapper script for $objdir/$outputname
- # Generated by $PROGRAM (GNU $PACKAGE) $VERSION
-@@ -5123,6 +5125,8 @@
- BIN_SH=xpg4; export BIN_SH # for Tru64
- DUALCASE=1; export DUALCASE # for MKS sh
- 
-+export LD_LIBRARY_PATH=""
-+
- # The HP-UX ksh and POSIX shell print the target directory to stdout
- # if CDPATH is set.
- (unset CDPATH) >/dev/null 2>&1 && unset CDPATH
--- a/components/isl/test/results-isl.master	Wed Mar 29 13:17:19 2017 -0700
+++ b/components/isl/test/results-isl.master	Wed Jan 11 23:54:04 2017 -0600
@@ -1,7 +1,26 @@
+make: Entering directory '$(@D)'
+make: Entering directory '$(@D)'
+make: Entering directory '$(@D)'
+make: Entering directory '$(@D)'
 PASS: isl_test
 PASS: codegen_test.sh
 PASS: pip_test.sh
 PASS: bound_test.sh
-==================
-All 4 tests passed
-==================
+PASS: isl_test_int
+============================================================================
+Testsuite summary for isl 0.18
+============================================================================
+# TOTAL: 5
+# PASS:  5
+# SKIP:  0
+# XFAIL: 0
+# FAIL:  0
+# XPASS: 0
+# ERROR: 0
+============================================================================
+make: Leaving directory '$(@D)'
+make: Leaving directory '$(@D)'
+make: Leaving directory '$(@D)'
+make: Entering directory '$(@D)/doc'
+make: Leaving directory '$(@D)/doc'
+make: Leaving directory '$(@D)'