Hello community, here is the log from the commit of package python-llvmlite for openSUSE:Factory checked in at 2018-06-25 11:42:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-llvmlite (Old) and /work/SRC/openSUSE:Factory/.python-llvmlite.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-llvmlite" Mon Jun 25 11:42:47 2018 rev:6 rq:618810 version:0.23.2 Changes: -------- --- /work/SRC/openSUSE:Factory/python-llvmlite/python-llvmlite.changes 2018-05-28 08:08:02.445672881 +0200 +++ /work/SRC/openSUSE:Factory/.python-llvmlite.new/python-llvmlite.changes 2018-06-25 11:42:50.948489313 +0200 @@ -1,0 +2,10 @@ +Sun Jun 24 01:18:22 UTC 2018 - [email protected] + +- update to version 0.23.2: + * PR #361: Add SVML detection and a function to declare support. + +- changes from version 0.23.1: + * PR #353: PR Fix llvmdev build recipe. + * PR #348: llvmdev: enhancements to conda recipe + +------------------------------------------------------------------- Old: ---- llvmlite-0.23.0.tar.gz New: ---- llvmlite-0.23.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-llvmlite.spec ++++++ --- /var/tmp/diff_new_pack.HHTVqm/_old 2018-06-25 11:42:51.572466299 +0200 +++ /var/tmp/diff_new_pack.HHTVqm/_new 2018-06-25 11:42:51.576466152 +0200 @@ -18,7 +18,7 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-llvmlite -Version: 0.23.0 +Version: 0.23.2 Release: 0 Summary: Lightweight wrapper around basic LLVM functionality License: BSD-2-Clause ++++++ llvmlite-0.23.0.tar.gz -> llvmlite-0.23.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/PKG-INFO new/llvmlite-0.23.2/PKG-INFO --- old/llvmlite-0.23.0/PKG-INFO 2018-04-25 04:32:25.000000000 +0200 +++ new/llvmlite-0.23.2/PKG-INFO 2018-06-01 22:10:20.000000000 +0200 @@ -1,13 +1,12 @@ Metadata-Version: 1.1 Name: llvmlite -Version: 0.23.0 +Version: 0.23.2 Summary: lightweight wrapper around basic LLVM functionality Home-page: http://llvmlite.pydata.org Author: Continuum Analytics, Inc. Author-email: [email protected] License: BSD Download-URL: https://github.com/numba/llvmlite -Description-Content-Type: UNKNOWN Description: UNKNOWN Platform: UNKNOWN Classifier: Development Status :: 4 - Beta diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/ffi/CMakeLists.txt new/llvmlite-0.23.2/ffi/CMakeLists.txt --- old/llvmlite-0.23.0/ffi/CMakeLists.txt 2018-02-15 23:13:59.000000000 +0100 +++ new/llvmlite-0.23.2/ffi/CMakeLists.txt 2018-06-01 22:05:01.000000000 +0200 @@ -4,6 +4,8 @@ # This will define the name of the solution file in the build directory project(llvmlite_ffi) +include(CheckIncludeFiles) + find_package(LLVM REQUIRED CONFIG) message(STATUS "Found LLVM ${LLVM_PACKAGE_VERSION}") @@ -17,6 +19,18 @@ include_directories(${LLVM_INCLUDE_DIRS}) add_definitions(${LLVM_DEFINITIONS}) +# Look for SVML +set(CMAKE_REQUIRED_INCLUDES ${LLVM_INCLUDE_DIRS}) + +CHECK_INCLUDE_FILES("llvm/IR/SVML.gen" HAVE_SVML) +if(HAVE_SVML) + message(STATUS "SVML found") + add_definitions(-DHAVE_SVML) +else() + message(STATUS "SVML not found") +endif() + + # Define our shared library add_library(llvmlite SHARED assembly.cpp bitcode.cpp core.cpp initfini.cpp module.cpp value.cpp executionengine.cpp transforms.cpp diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/ffi/Makefile.linux new/llvmlite-0.23.2/ffi/Makefile.linux --- old/llvmlite-0.23.0/ffi/Makefile.linux 2018-02-15 23:13:59.000000000 +0100 +++ new/llvmlite-0.23.2/ffi/Makefile.linux 2018-06-01 22:05:01.000000000 +0200 @@ -6,7 +6,7 @@ LD_FLTO_FLAGS ?= -flto -Wl,--exclude-libs=ALL CXXFLAGS = $(LLVM_CXXFLAGS) $(CXX_FLTO_FLAGS) -LDFLAGS = $(LLVM_LDFLAGS) $(LD_FLTO_FLAGS) +LDFLAGS := $(LDFLAGS) $(LLVM_LDFLAGS) $(LD_FLTO_FLAGS) LIBS = $(LLVM_LIBS) INCLUDE = core.h SRC = assembly.cpp bitcode.cpp core.cpp initfini.cpp module.cpp value.cpp \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/ffi/Makefile.osx new/llvmlite-0.23.2/ffi/Makefile.osx --- old/llvmlite-0.23.0/ffi/Makefile.osx 2018-02-15 23:13:59.000000000 +0100 +++ new/llvmlite-0.23.2/ffi/Makefile.osx 2018-06-01 22:05:01.000000000 +0200 @@ -1,7 +1,7 @@ CXX = clang++ -std=c++11 -stdlib=libc++ CXXFLAGS = $(LLVM_CXXFLAGS) -LDFLAGS = $(LLVM_LDFLAGS) +LDFLAGS := $(LDFLAGS) $(LLVM_LDFLAGS) LIBS = $(LLVM_LIBS) INCLUDE = core.h SRC = assembly.cpp bitcode.cpp core.cpp initfini.cpp module.cpp value.cpp \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/ffi/build.py new/llvmlite-0.23.2/ffi/build.py --- old/llvmlite-0.23.0/ffi/build.py 2018-04-25 04:31:26.000000000 +0200 +++ new/llvmlite-0.23.2/ffi/build.py 2018-06-01 22:05:01.000000000 +0200 @@ -113,6 +113,16 @@ # on OSX cxxflags has null bytes at the end of the string, remove them cxxflags = cxxflags.replace('\0', '') cxxflags = cxxflags.split() + ['-fno-rtti', '-g'] + + # look for SVML + include_dir = run_llvm_config(llvm_config, ['--includedir']).strip() + svml_indicator = os.path.join(include_dir, 'llvm', 'IR', 'SVML.gen') + if os.path.isfile(svml_indicator): + cxxflags = cxxflags + ['-DHAVE_SVML'] + print('SVML detected') + else: + print('SVML not detected') + os.environ['LLVM_CXXFLAGS'] = ' '.join(cxxflags) ldflags = run_llvm_config(llvm_config, ["--ldflags"]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/ffi/targets.cpp new/llvmlite-0.23.2/ffi/targets.cpp --- old/llvmlite-0.23.0/ffi/targets.cpp 2018-04-25 04:31:26.000000000 +0200 +++ new/llvmlite-0.23.2/ffi/targets.cpp 2018-06-01 22:05:01.000000000 +0200 @@ -309,6 +309,17 @@ return LLVMDisposeMemoryBuffer(MB); } +API_EXPORT(int) +LLVMPY_HasSVMLSupport(void) +{ +#ifdef HAVE_SVML + return 1; +#else + return 0; +#endif +} + + /* If needed: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/llvmlite/_version.py new/llvmlite-0.23.2/llvmlite/_version.py --- old/llvmlite-0.23.0/llvmlite/_version.py 2018-04-25 04:32:25.000000000 +0200 +++ new/llvmlite-0.23.2/llvmlite/_version.py 2018-06-01 22:10:20.000000000 +0200 @@ -4,8 +4,8 @@ # unpacked source archive. Distribution tarballs contain a pre-generated copy # of this file. -version_version = '0.23.0' -version_full = 'a924507857937369bdeb795a0f2d0a85ee27a0c1' +version_version = '0.23.2' +version_full = '02bd87a8449bb2984e9791bdd1d653338442b6b8' def get_versions(default={}, verbose=False): return {'version': version_version, 'full': version_full} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/llvmlite-0.23.0/llvmlite/binding/targets.py new/llvmlite-0.23.2/llvmlite/binding/targets.py --- old/llvmlite-0.23.0/llvmlite/binding/targets.py 2018-04-25 04:31:26.000000000 +0200 +++ new/llvmlite-0.23.2/llvmlite/binding/targets.py 2018-06-01 22:05:01.000000000 +0200 @@ -301,6 +301,15 @@ ffi.lib.LLVMPY_GetTargetMachineTriple(self, out) return str(out) +def has_svml(): + """ + Returns True if SVML was enabled at FFI support compile time. + """ + if ffi.lib.LLVMPY_HasSVMLSupport() == 0: + return False + else: + return True + # ============================================================================ # FFI @@ -400,3 +409,6 @@ ffi.LLVMTargetMachineRef, ] ffi.lib.LLVMPY_CreateTargetMachineData.restype = ffi.LLVMTargetDataRef + +ffi.lib.LLVMPY_HasSVMLSupport.argtypes = [] +ffi.lib.LLVMPY_HasSVMLSupport.restype = c_int
