mirror of
https://github.com/fish-shell/fish-shell.git
synced 2025-02-17 00:32:46 +08:00
RPM/Debian packaging: Rust build support
This commit is contained in:
parent
e05bbe06ca
commit
572aece169
5
debian/control
vendored
5
debian/control
vendored
|
@ -4,9 +4,10 @@ Priority: optional
|
||||||
Maintainer: ridiculous_fish <corydoras@ridiculousfish.com>
|
Maintainer: ridiculous_fish <corydoras@ridiculousfish.com>
|
||||||
Uploaders: David Adam <zanchey@ucc.gu.uwa.edu.au>
|
Uploaders: David Adam <zanchey@ucc.gu.uwa.edu.au>
|
||||||
# Debhelper should be bumped to >= 10 once Ubuntu Xenial is no longer supported
|
# Debhelper should be bumped to >= 10 once Ubuntu Xenial is no longer supported
|
||||||
Build-Depends: debhelper (>= 9.20160115), cmake (>= 3.5.0), gettext, libpcre2-dev,
|
Build-Depends: debhelper (>= 9.20160115), cmake (>= 3.19.0) | cmake-mozilla (>= 3.19.0), gettext,
|
||||||
|
rustc (>= 1.70), cargo (>= 0.66) | cargo-mozilla (>= 0.66), libpcre2-dev,
|
||||||
# Test dependencies
|
# Test dependencies
|
||||||
locales-all, python3, rustc (>= 1.70) | rustc-mozilla (>= 1.70), cargo
|
locales-all, python3
|
||||||
Standards-Version: 4.1.5
|
Standards-Version: 4.1.5
|
||||||
Homepage: https://fishshell.com/
|
Homepage: https://fishshell.com/
|
||||||
Vcs-Git: https://github.com/fish-shell/fish-shell.git
|
Vcs-Git: https://github.com/fish-shell/fish-shell.git
|
||||||
|
|
9
debian/rules
vendored
9
debian/rules
vendored
|
@ -9,7 +9,14 @@ export DH_VERBOSE=1
|
||||||
|
|
||||||
# Setting the build system is still required, because otherwise the GNUmakefile gets picked up
|
# Setting the build system is still required, because otherwise the GNUmakefile gets picked up
|
||||||
override_dh_auto_configure:
|
override_dh_auto_configure:
|
||||||
dh_auto_configure --buildsystem=cmake
|
ln -s cargo-vendor/vendor vendor
|
||||||
|
ln -s cargo-vendor/.cargo .cargo
|
||||||
|
dh_auto_configure --buildsystem=cmake -- -DCMAKE_BUILD_TYPE=RelWithDebInfo
|
||||||
|
|
||||||
|
override_dh_clean:
|
||||||
|
dh_clean
|
||||||
|
-unlink .cargo
|
||||||
|
-unlink vendor
|
||||||
|
|
||||||
# On CMake 3.5 (and possibly 3.6), the test target does not pick up its dependencies properly
|
# On CMake 3.5 (and possibly 3.6), the test target does not pick up its dependencies properly
|
||||||
# Build tests_buildroot_target by hand (remove this once Ubuntu Xenial is out of support)
|
# Build tests_buildroot_target by hand (remove this once Ubuntu Xenial is out of support)
|
||||||
|
|
17
fish.spec.in
17
fish.spec.in
|
@ -9,17 +9,19 @@ Group: System/Shells
|
||||||
URL: https://fishshell.com/
|
URL: https://fishshell.com/
|
||||||
|
|
||||||
Source0: %{name}_@VERSION@.orig.tar.xz
|
Source0: %{name}_@VERSION@.orig.tar.xz
|
||||||
|
Source1: %{name}_@VERSION@.orig-cargo-vendor.tar.xz
|
||||||
BuildRequires: cargo gettext gcc-c++ xz pcre2-devel
|
BuildRequires: cargo gettext gcc-c++ xz pcre2-devel
|
||||||
BuildRequires: rust >= 1.70
|
BuildRequires: rust >= 1.70
|
||||||
|
# Packaging guidelines say to use a BuildRequires: rust-packaging, but it adds no value for our package
|
||||||
|
|
||||||
%if 0%{?rhel} && 0%{?rhel} < 8
|
BuildRequires: cmake >= 3.19
|
||||||
BuildRequires: cmake3
|
|
||||||
%else
|
|
||||||
BuildRequires: cmake
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
BuildRequires: update-desktop-files
|
BuildRequires: update-desktop-files
|
||||||
|
# for tests
|
||||||
|
BuildRequires: groff
|
||||||
|
%else
|
||||||
|
BuildRequires: groff-base
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
# for tests
|
# for tests
|
||||||
|
@ -49,9 +51,12 @@ focused on user friendliness and discoverability. The language syntax
|
||||||
is simple but incompatible with other shell languages.
|
is simple but incompatible with other shell languages.
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q -n %{name}-@VERSION@
|
# Unpack the source tarball and overlay the vendor tarball
|
||||||
|
%setup -q -n %{name}-@VERSION@ -a 1
|
||||||
|
# Should use cargo_prep here, it overrides our vendor config changes though
|
||||||
|
|
||||||
%build
|
%build
|
||||||
|
export CARGO_NET_OFFLINE=true
|
||||||
# CMake macros define the wrong sysconfdir arguments
|
# CMake macros define the wrong sysconfdir arguments
|
||||||
EXTRA_CMAKE_FLAGS="$EXTRA_CMAKE_FLAGS -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} -DCMAKE_INSTALL_DOCDIR=%{_docdir}/fish"
|
EXTRA_CMAKE_FLAGS="$EXTRA_CMAKE_FLAGS -DCMAKE_INSTALL_SYSCONFDIR=%{_sysconfdir} -DCMAKE_INSTALL_DOCDIR=%{_docdir}/fish"
|
||||||
%if 0%{?rhel} && 0%{?rhel} < 8
|
%if 0%{?rhel} && 0%{?rhel} < 8
|
||||||
|
|
Loading…
Reference in New Issue
Block a user