Hello community, here is the log from the commit of package graphene for openSUSE:Factory checked in at 2018-02-25 12:16:30 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/graphene (Old) and /work/SRC/openSUSE:Factory/.graphene.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "graphene" Sun Feb 25 12:16:30 2018 rev:6 rq:579315 version:1.6.2 Changes: -------- --- /work/SRC/openSUSE:Factory/graphene/graphene.changes 2017-12-04 12:15:03.279469165 +0100 +++ /work/SRC/openSUSE:Factory/.graphene.new/graphene.changes 2018-02-25 12:16:36.508055770 +0100 @@ -1,0 +2,19 @@ +Thu Feb 22 23:34:27 UTC 2018 - [email protected] + +- Update to version 1.6.2: + + Mostly fixes for the Meson build, to ensure it's a bit more + idiomatic and conforms to what newer versions of Meson expect + from a project. +- Do a minor spec clean, use autosetup and license macros. +- Stop exporting LANG=C.UTF-8, fixed upstream. +- Stop exporting i586 conditional SUSE_ASNEEDED=0, fixed upstream. +- Pass explict enable-gtk-doc=true, enable-gobject-types=true, + enable-introspection=true, enable-gcc-vector=true, + enable-sse2=true and enable-arm-neon=true to meson, ensure we + build the features we want. +- Following the above, add gtk-doc BuildRequires and package the + now built documentation in devel subpackage. +- Stop using sed to ensure we are using python3, fixed upstream. +- Add fdupes BuildRequires and macro, remove duplicate files. + +------------------------------------------------------------------- Old: ---- graphene-1.6.0.tar.gz New: ---- graphene-1.6.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ graphene.spec ++++++ --- /var/tmp/diff_new_pack.WFtUIn/_old 2018-02-25 12:16:37.424022542 +0100 +++ /var/tmp/diff_new_pack.WFtUIn/_new 2018-02-25 12:16:37.428022397 +0100 @@ -1,7 +1,7 @@ # # spec file for package graphene # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: graphene -Version: 1.6.0 +Version: 1.6.2 Release: 0 Summary: Thin type layer for graphic libraries License: MIT @@ -25,12 +25,14 @@ Url: http://ebassi.github.io/graphene/ Source: https://github.com/ebassi/graphene/archive/%{version}/%{name}-%{version}.tar.gz Source99: baselibs.conf + +BuildRequires: fdupes BuildRequires: gobject-introspection-devel -BuildRequires: meson >= 0.37.0 +BuildRequires: gtk-doc +BuildRequires: meson >= 0.43.1 BuildRequires: pkgconfig BuildRequires: python3-base BuildRequires: pkgconfig(gobject-2.0) >= 2.30.0 -BuildRoot: %{_tmppath}/%{name}-%{version}-build %description The Graphene library provides types and their relative API for affine @@ -76,27 +78,22 @@ This subpackage contains the development files for the Graphene library. %prep -%setup -q -# replace usr/bin/env shebang -sed -i "s|/usr/bin/env python|/usr/bin/python3|" src/identfilter.py -sed -i "s|--identifier-filter-cmd=python|--identifier-filter-cmd=python3|" src/meson.build +%autosetup %build -# meson errors out without a utf8 LANG set -# https://github.com/mesonbuild/meson/issues/1085 -export LANG=C.UTF-8 -M_OPTIONS="" -%ifarch i586 -# on i586, the compiler drops 'libm' and then g-ir-scanner fails to resolve it -# See gh#ebassie/graphene#82 -export SUSE_ASNEEDED=0 -M_OPTIONS="-Denable-sse2=false" -%endif -%meson $M_OPTIONS +%meson \ + -D enable-gtk-doc=true \ + -D enable-gobject-types=true \ + -D enable-introspection=true \ + -D enable-gcc-vector=true \ + -D enable-sse2=true \ + -D enable-arm-neon=true \ + %{nil} %meson_build %install %meson_install +%fdupes %{buildroot}%{_libdir}/pkgconfig %check %meson_test @@ -105,20 +102,17 @@ %postun -n libgraphene-1_0-0 -p /sbin/ldconfig %files -n libgraphene-1_0-0 -%defattr(-,root,root) -%doc LICENSE +%license LICENSE %{_libdir}/libgraphene-1.0.so.* %files -n typelib-1_0-Graphene-1_0 -%defattr(-,root,root) %{_libdir}/girepository-1.0/Graphene-1.0.typelib %files -n libgraphene-devel -%defattr(-,root,root) +%doc %{_datadir}/gtk-doc/html/* %{_includedir}/graphene-1.0/ %{_prefix}/lib/installed-tests/ %{_libdir}/libgraphene-1.0.so - %{_libdir}/pkgconfig/graphene-1.0.pc %{_libdir}/pkgconfig/graphene-gobject-1.0.pc %dir %{_libdir}/graphene-1.0 ++++++ graphene-1.6.0.tar.gz -> graphene-1.6.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/.gitattributes new/graphene-1.6.2/.gitattributes --- old/graphene-1.6.0/.gitattributes 1970-01-01 01:00:00.000000000 +0100 +++ new/graphene-1.6.2/.gitattributes 2018-02-22 23:59:10.000000000 +0100 @@ -0,0 +1,5 @@ +.appveyor.yml export-ignore +.github export-ignore +.travis.yml export-ignore + +graphene.doap export-ignore diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/.gitignore new/graphene-1.6.2/.gitignore --- old/graphene-1.6.0/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/graphene-1.6.2/.gitignore 2018-02-22 23:59:10.000000000 +0100 @@ -0,0 +1,46 @@ +Makefile +Makefile.in +*.swp +/aclocal.m4 +/autom4te.cache/ +/build/autotools/gtk-doc.m4 +/build/autotools/libtool.m4 +/build/autotools/ltoptions.m4 +/build/autotools/ltsugar.m4 +/build/autotools/ltversion.m4 +/build/autotools/lt~obsolete.m4 +/build/compile +/build/config.guess +/build/config.sub +/build/depcomp +/build/install-sh +/build/ltmain.sh +/build/missing +/build/test-driver +/config.log +/config.status +/configure +/graphene-lcov.info +/graphene-lcov/ +/gtk-doc.make +/libtool +/src/.deps +/src/.libs +/src/*.c.s +/src/*.la +/src/*.lo +/src/*.o +/src/*.gir +/src/*.typelib +/src/*.gcda +/src/*.gcno +/src/config.h +/src/config.h.in +/src/config.h.in~ +/src/graphene-config-stamp +/src/graphene-config.h +/src/graphene-version.h +/src/graphene.pc +/src/graphene-1.0.pc +/src/graphene-gobject-1.0.pc +/src/stamp-h1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/configure.ac new/graphene-1.6.2/configure.ac --- old/graphene-1.6.0/configure.ac 2017-03-02 18:21:17.000000000 +0100 +++ new/graphene-1.6.2/configure.ac 2018-02-22 23:59:10.000000000 +0100 @@ -3,8 +3,8 @@ # keep interface_age in sync with micro_version, or set to 0 during development cycles m4_define([graphene_major_version], [1]) m4_define([graphene_minor_version], [6]) -m4_define([graphene_micro_version], [0]) -m4_define([graphene_interface_age], [0]) +m4_define([graphene_micro_version], [2]) +m4_define([graphene_interface_age], [2]) m4_define([graphene_version], [graphene_major_version.graphene_minor_version.graphene_micro_version]) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/doc/.gitignore new/graphene-1.6.2/doc/.gitignore --- old/graphene-1.6.0/doc/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/graphene-1.6.2/doc/.gitignore 2018-02-22 23:59:10.000000000 +0100 @@ -0,0 +1,22 @@ +/.libs +/html +/xml +/*.stamp +/graphene-decl-list.txt +/graphene-decl-list.txt.bak +/graphene-decl.txt +/graphene-decl.txt.bak +/graphene-undeclared.txt +/graphene-undocumented.txt +/graphene-unused.txt +/graphene.args +/graphene.hierarchy +/graphene.interfaces +/graphene.prerequisites +/graphene.signals +/graphene.types +/gtkdoc-check.log +/gtkdoc-check.test +/gtkdoc-check.trs +/test-suite.log + diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/meson.build new/graphene-1.6.2/meson.build --- old/graphene-1.6.0/meson.build 2017-03-02 18:21:17.000000000 +0100 +++ new/graphene-1.6.2/meson.build 2018-02-22 23:59:10.000000000 +0100 @@ -1,12 +1,12 @@ project('graphene', 'c', - version: '1.6.0', + version: '1.6.2', default_options: [ 'buildtype=debugoptimized', 'c_std=c99', 'warning_level=1' ], license: 'MIT', - meson_version: '>= 0.37.0') + meson_version: '>= 0.43.1') graphene_version = meson.project_version() version_array = graphene_version.split('.') @@ -113,27 +113,24 @@ '-Werror=write-strings' ] endif -common_flags = [] -foreach cflag: test_cflags - if cc.has_argument(cflag) - common_flags += [ cflag ] - endif -endforeach +common_flags = cc.get_supported_arguments(test_cflags) # Headers -conf.set('HAVE_STDLIB_H', cc.has_header('stdlib.h')) -conf.set('HAVE_STDINT_H', cc.has_header('stdint.h')) -conf.set('HAVE_STDBOOL_H', cc.has_header('stdbool.h')) -conf.set('HAVE_MEMORY_H', cc.has_header('memory.h')) +foreach h: [ 'stdlib.h', 'stdint.h', 'stdbool.h', 'memory.h' ] + conf.set('HAVE_' + h.underscorify().to_upper(), cc.has_header(h)) +endforeach # Required dependencies mathlib = cc.find_library('m', required: false) threadlib = dependency('threads', required: true) # Functions -if cc.has_function('memalign', prefix: '#include <stdlib.h>\n#include <malloc.h>') +if cc.has_function('memalign', + prefix: '''#include <stdlib.h> + #include <malloc.h>''') conf.set('HAVE_MEMALIGN', 1) -elif cc.has_function('_aligned_malloc', prefix: '#include <malloc.h>') +elif cc.has_function('_aligned_malloc', + prefix: '#include <malloc.h>') conf.set('HAVE__ALIGNED_MALLOC', 1) # Don't probe the ones below on Windows because when building with # MinGW-w64 on MSYS2, Meson<0.37.0 incorrectly detects those below as @@ -158,7 +155,7 @@ buildtype = get_option('buildtype') if buildtype == 'release' debug_flags += [ '-DG_DISABLE_ASSERT' ] -elif buildtype == 'debug' or buildtype == 'debugoptimized' +elif buildtype.startswith('debug') debug_flags += [ '-DGRAPHENE_ENABLE_DEBUG' ] endif @@ -167,14 +164,12 @@ if get_option('default_library') != 'static' if host_system == 'windows' conf.set('DLL_EXPORT', true) - if cc.get_id() == 'msvc' - conf.set('_GRAPHENE_PUBLIC', '__declspec(dllexport) extern') - else - conf.set('_GRAPHENE_PUBLIC', '__attribute__((visibility("default"))) __declspec(dllexport) extern') + conf.set('_GRAPHENE_PUBLIC', '__declspec(dllexport) extern') + if cc.get_id() != 'msvc' extra_args += ['-fvisibility=hidden'] endif else - conf.set('_GRAPHENE_PUBLIC', '__attribute__((visibility("default")))') + conf.set('_GRAPHENE_PUBLIC', '__attribute__((visibility("default"))) extern') extra_args += ['-fvisibility=hidden'] endif endif @@ -194,12 +189,7 @@ # Optional dependency on GObject-Introspection; if GObject is disabled # then we don't build introspection data either -build_gir = build_gobject -if build_gobject and get_option('enable-introspection') - # XXX: Not nice, but probably our best option - gir = find_program('g-ir-scanner', required: false) - build_gir = gir.found() and not meson.is_cross_build() -endif +build_gir = build_gobject and get_option('enable-introspection') # Check for InitOnce on Windows if host_system == 'windows' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/src/bench/.gitignore new/graphene-1.6.2/src/bench/.gitignore --- old/graphene-1.6.0/src/bench/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/graphene-1.6.2/src/bench/.gitignore 2018-02-22 23:59:10.000000000 +0100 @@ -0,0 +1,8 @@ +/.deps/ +/.libs/ +/*.csv +/*.o +/*.la +/*.lo +/*.log +/matrix-* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/src/graphene-version-macros.h new/graphene-1.6.2/src/graphene-version-macros.h --- old/graphene-1.6.0/src/graphene-version-macros.h 2017-03-02 18:21:17.000000000 +0100 +++ new/graphene-1.6.2/src/graphene-version-macros.h 2018-02-22 23:59:10.000000000 +0100 @@ -168,7 +168,7 @@ #endif /* Graphene 1.6 */ -#if GRAPHENE_VERSION_MIN_REQUIRED >= GRAPHENE_VERSION_1_4 +#if GRAPHENE_VERSION_MIN_REQUIRED >= GRAPHENE_VERSION_1_6 # define GRAPHENE_DEPRECATED_IN_1_6 GRAPHENE_DEPRECATED # define GRAPHENE_DEPRECATED_IN_1_6_FOR(f) GRAPHENE_DEPRECATED_FOR(f) #else @@ -176,7 +176,7 @@ # define GRAPHENE_DEPRECATED_IN_1_6_FOR(f) _GRAPHENE_PUBLIC #endif -#if GRAPHENE_VERSION_MAX_ALLOWED < GRAPHENE_VERSION_1_4 +#if GRAPHENE_VERSION_MAX_ALLOWED < GRAPHENE_VERSION_1_6 # define GRAPHENE_AVAILABLE_IN_1_6 GRAPHENE_UNAVAILABLE(1,6) #else # define GRAPHENE_AVAILABLE_IN_1_6 _GRAPHENE_PUBLIC diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/src/identfilter.py new/graphene-1.6.2/src/identfilter.py --- old/graphene-1.6.0/src/identfilter.py 2017-03-02 18:21:17.000000000 +0100 +++ new/graphene-1.6.2/src/identfilter.py 2018-02-22 23:59:10.000000000 +0100 @@ -1,13 +1,11 @@ -#!/usr/bin/env python - import sys import re NUMBER_REGEX = re.compile(r'([0-9])([a-z])') def to_camel_case(text): - # We only care about types that end with '_t' - if not text.endswith('_t'): + # We only care about Graphene types + if not text.startswith('graphene_') and not text.endswith('_t'): return text res = [] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/src/meson.build new/graphene-1.6.2/src/meson.build --- old/graphene-1.6.0/src/meson.build 2017-03-02 18:21:17.000000000 +0100 +++ new/graphene-1.6.2/src/meson.build 2018-02-22 23:59:10.000000000 +0100 @@ -63,23 +63,29 @@ endif # Internal configuration header -configure_file(input: 'config.h.meson', - output: 'config.h', - configuration: conf) +configure_file( + input: 'config.h.meson', + output: 'config.h', + configuration: conf, +) # External configuration header -configure_file(input: 'graphene-config.h.meson', - output: 'graphene-config.h', - configuration: graphene_conf, - install: true, - install_dir: join_paths(graphene_libdir, 'graphene-1.0', 'include')) +configure_file( + input: 'graphene-config.h.meson', + output: 'graphene-config.h', + configuration: graphene_conf, + install: true, + install_dir: join_paths(graphene_libdir, 'graphene-1.0', 'include'), +) # Version header -configure_file(input: 'graphene-version.h.in', - output: 'graphene-version.h', - configuration: conf, - install: true, - install_dir: join_paths(graphene_includedir, 'graphene-1.0')) +configure_file( + input: 'graphene-version.h.in', + output: 'graphene-version.h', + configuration: conf, + install: true, + install_dir: join_paths(graphene_includedir, 'graphene-1.0'), +) install_headers(headers + simd_headers + [ 'graphene.h' ], subdir: 'graphene-1.0') @@ -91,30 +97,27 @@ platform_deps += [ gobject ] endif -if cc.get_id() == 'gcc' - graphene_link_args = [ '-Wl,-Bsymbolic-functions' ] +if host_system == 'linux' and cc.get_id() == 'gcc' + graphene_link_args = [ '-Wl,-Bsymbolic-functions', '-Wl,-z,relro', '-Wl,-z,now', ] else graphene_link_args = [] endif -libgraphene = shared_library('graphene-@0@'.format(graphene_api_version), +libgraphene = library( + 'graphene-@0@'.format(graphene_api_version), sources: sources + simd_sources + private_headers, version: libversion, soversion: soversion, install: true, dependencies: [ mathlib, threadlib ] + platform_deps, c_args: extra_args + common_flags + debug_flags + [ - '-DGRAPHENE_COMPILATION', - '-DG_LOG_DOMAIN="Graphene"', - '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_30', - '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32' ], - link_args: graphene_link_args) - -# Internal dependency, for tests and benchmarks -graphene_inc = include_directories('.') -graphene_dep = declare_dependency(link_with: libgraphene, - include_directories: [ graphene_inc ], - dependencies: [ mathlib, threadlib ] + platform_deps) + '-DGRAPHENE_COMPILATION', + '-DG_LOG_DOMAIN="Graphene"', + '-DGLIB_VERSION_MIN_REQUIRED=GLIB_VERSION_2_30', + '-DGLIB_VERSION_MAX_ALLOWED=GLIB_VERSION_2_32', + ], + link_args: graphene_link_args, +) # Generate the pkg-config files foreach p: pkgconfig_files @@ -125,25 +128,44 @@ install_dir: join_paths(graphene_libdir, 'pkgconfig')) endforeach +graphene_gir_deps = [] if build_gir + python = import('python3').find_python() + identfilter_py = join_paths(meson.current_source_dir(), 'identfilter.py') + gir_extra_args = [ - '--identifier-filter-cmd=python ' + join_paths(meson.current_source_dir(), 'identfilter.py'), + '--identifier-filter-cmd=@0@ @1@'.format(python.path(), identfilter_py), '--c-include=graphene-gobject.h', '--accept-unprefixed', + '--quiet', '-DGRAPHENE_COMPILATION', ] - gnome.generate_gir(libgraphene, - sources: headers + sources, - namespace: 'Graphene', - nsversion: graphene_api_version, - identifier_prefix: 'Graphene', - symbol_prefix: 'graphene', - export_packages: 'graphene-gobject-@0@'.format(graphene_api_version), - includes: [ 'GObject-2.0' ], - install: true, - extra_args: gir_extra_args) + + libgraphene_gir = gnome.generate_gir( + libgraphene, + sources: headers + sources, + namespace: 'Graphene', + nsversion: graphene_api_version, + identifier_prefix: 'Graphene', + symbol_prefix: 'graphene', + export_packages: 'graphene-gobject-@0@'.format(graphene_api_version), + includes: [ 'GObject-2.0' ], + install: true, + extra_args: gir_extra_args, + ) + + graphene_gir_deps += libgraphene_gir[0] endif +# Internal dependency, for tests and benchmarks +graphene_inc = include_directories('.') +graphene_dep = declare_dependency( + sources: graphene_gir_deps, + link_with: libgraphene, + include_directories: [ graphene_inc ], + dependencies: [ mathlib, threadlib ] + platform_deps, +) + # tests and benchmarks depend on GLib, so we only build them if GObject is enabled if build_gobject subdir('tests') diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/graphene-1.6.0/src/tests/.gitignore new/graphene-1.6.2/src/tests/.gitignore --- old/graphene-1.6.0/src/tests/.gitignore 1970-01-01 01:00:00.000000000 +0100 +++ new/graphene-1.6.2/src/tests/.gitignore 2018-02-22 23:59:10.000000000 +0100 @@ -0,0 +1,25 @@ +/.deps +/.libs +/*.o +/*.log +/*.trs +/*.gcda +/*.gcno +/box +/euler +/frustum +/matrix +/plane +/point +/point3d +/quad +/quaternion +/ray +/rect +/simd +/size +/sphere +/triangle +/vec2 +/vec3 +/vec4
