From 8e103f6aafef0bc1fd2470c8b3268ca6ee1975c9 Mon Sep 17 00:00:00 2001 From: Fabio Valentini Date: Nov 13 2020 10:04:27 +0000 Subject: rust2rpm: allow removing unwanted features Also, don't "echo" BuildRequires, this is very weird. --- diff --git a/README.md b/README.md index 22b4b30..fa94ddb 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,9 @@ Some simple example would be better than many words ;) ```ini [DEFAULT] +unwanted-features = + compiler_builtins + rustc-dep-of-std buildrequires = pkgconfig(foo) >= 1.2.3 lib.requires = diff --git a/rust2rpm/templates/main.spec b/rust2rpm/templates/main.spec index c5686d3..71d1ffe 100644 --- a/rust2rpm/templates/main.spec +++ b/rust2rpm/templates/main.spec @@ -50,6 +50,9 @@ BuildArch: noarch {% endif %} BuildRequires: rust-packaging +{% for req in to_list(distconf.get("buildrequires"))|sort %} +BuildRequires: {{ req }} +{% endfor %} {% if all_features %} {% set cargo_args = " -a" %} {% endif %} @@ -74,9 +77,6 @@ BuildRequires: {{ req }} {% endfor %} %endif {% endif %} - {% for req in to_list(distconf.get("buildrequires"))|sort %} -BuildRequires: {{ req }} - {% endfor %} {% if has_buildrequires and not only_main %} %endif {% endif %} @@ -130,6 +130,9 @@ Requires: {{ req }} {% set features = features|sort %} {% do features.insert(0, None) %} {% do features.insert(1, "default") %} + {% for unwanted in to_list(distconf.get("unwanted-features")) %} + {% do features.remove(unwanted) %} + {% endfor %} {% for feature in features %} {% if feature is none %} {% set pkg = " devel" %} @@ -189,9 +192,6 @@ which use {% if feature is not none %}"{{ feature }}" feature of {% endif %}"%{c {% if generate_buildrequires %} %generate_buildrequires %cargo_generate_buildrequires{{ cargo_args }} - {% for req in to_list(distconf.get("buildrequires"))|sort %} -echo {{ "%r"|format(req) }} - {% endfor %} {% endif -%}