# debug info seem not works with D compiler %global debug_package %{nil} %global major_version 0 %global minor_version 8 %global patch_version 0 %global pre alpha.9 Name: containers Version: %{major_version}.%{minor_version}.%{patch_version} Release: 2%{?pre:.%{pre}}%{?dist} Summary: Efficient library to use collection in D Summary(fr): Bibliothèque efficace pour l'utilisation des collections en D License: Boost URL: https://github.com/dlang-community/dsymbol Source0: https://github.com/dlang-community/containers/archive/v%{version}%{?pre:-%{pre}}/%{name}-%{version}%{?pre:-%{pre}}.tar.gz ExclusiveArch: %{ldc_arches} BuildRequires: ldc meson Requires: ldc-phobos ldc-druntime stdx-allocator %description Efficient library to use collection in D. Value insertion can be up to 200 time faster than method provided by the standard library Phobos. %description -l fr Bibliothèque efficace pour l'utilisation des collections en D . L'insertion de valeur peut être jusqu'à 200 fois plus rapide que la méthode proposé par la bibliothèque standard Phobos. %package devel Summary: Development files for %{name} Requires: %{name}%{?_isa} = %{version}-%{release} Requires: stdx-allocator-devel %description devel containers package contains header files for developing D applications that use containers. %description devel -l fr Le paquet containers contient les fichiers d'entêtes pour développer des applications en D utilisant containers. %package geany-tags Summary: Support for enable autocompletion in geany Requires: %{name} = %{version}-%{release} BuildArch: noarch BuildRequires: geany Requires: geany %description geany-tags Enable autocompletion for dsymbol library in geany (IDE) %description -l fr geany-tags Active l'autocompletion pour pour la bibliothèque dsymbol dans geany (IDE) %prep %setup -q -n %{name}-%{version}%{?pre:-%{pre}} # temp geany config directory for allow geany to generate tags mkdir geany_config %build LDFLAGS='-Wl,-z,relro -Wl,-z,now' %meson %meson_build # generate doc src_dir='src' sources=$(find "${src_dir}" -name '*.d') for f in ${sources[@]}; do d_path=$(dirname ${f}); d_file=$(basename ${f}); doc_file=doc-src/${d_path/${src_dir}}/${d_file/.d/.html} ldc2 -L-lstdx-allocator -I %{_includedir}/d/stdx-allocator -I "${src_dir}" -o- -c $f -Df ${doc_file} doc-src/index.ddoc; done mv doc-src html # generate geany tags headers=$(find src -name '*.d') geany -c geany_config -g %{name}.d.tags ${headers[@]} %install %meson_install # geany tags mkdir -p %{buildroot}%{_datadir}/geany/tags/ install -pm0644 %{name}.d.tags %{buildroot}/%{_datadir}/geany/tags/ %files %license LICENSE.txt %doc README.md %{_libdir}/libd%{name}.so.%{version} %{_libdir}/libd%{name}.so.%{major_version} %files devel %doc html %{_libdir}/pkgconfig/d%{name}.pc %{_includedir}/d/%{name} %{_libdir}/libd%{name}.so %files geany-tags %{_datadir}/geany/tags/%{name}.d.tags %changelog * Sun Aug 26 2018 MERCIER Jonathan - 0.8.0-2.alpha.9 - Apply Robert-André Mauchin fix * Thu Aug 2 2018 MERCIER Jonathan - 0.8.0-1.alpha.9 - Initial release