4 Star 0 Fork 1

OpenCloudOS Stream/scons

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
scons.spec 4.80 KB
一键复制 编辑 原始数据 按行查看 历史
%bcond_with debug
Summary: An Open Source software construction tool
Name: scons
Version: 4.4.0
Release: 7%{?dist}
License: MIT
URL: http://www.scons.org
Source0: https://github.com/SCons/scons/archive/%{version}/scons-%{version}.tar.gz
Source1: https://scons.org/doc/production/scons-doc-%{version}.tar.gz
BuildRequires: make
BuildArch: noarch
%description
SCons is an Open Source software construction tool--that is, a build tool; an improved substitute
for the classic Make utility; a better way to build software. SCons is based on the design which
won the Software Carpentry build tool design competition in August 2000.
SCons "configuration files" are Python scripts, eliminating the need to learn a new build tool syntax.
SCons maintains a global view of all dependencies in a tree, and can scan source (or other) files for
implicit dependencies, such as files specified on #include lines. SCons uses MD5 signatures to rebuild
only when the contents of a file have really changed, not just when the timestamp has been touched. SCons
supports side-by-side variant builds, and is easily extended with user- defined Builder and/or Scanner objects.
%package -n python3-%{name}
Summary: An Open Source software construction tool
BuildRequires: python3-devel python3-lxml python3-wheel python3-setuptools
BuildRequires: python3-psutil python3-psutil-tests lynx
Provides: scons = %{version}-%{release}
Provides: scons-python3 = %{version}-%{release}
Provides: SCons = %{version}-%{release}
Provides: %{name}-doc = %{version}-%{release}
Obsoletes: %{name}-doc <= %{version}-%{release}
%description -n python3-%{name}
SCons is an Open Source software construction tool--that is, a build tool; an improved substitute
for the classic Make utility; a better way to build software. SCons is based on the design which
won the Software Carpentry build tool design competition in August 2000.
SCons "configuration files" are Python scripts, eliminating the need to learn a new build tool syntax.
SCons maintains a global view of all dependencies in a tree, and can scan source (or other) files for
implicit dependencies, such as files specified on #include lines. SCons uses MD5 signatures to rebuild
only when the contents of a file have really changed, not just when the timestamp has been touched. SCons
supports side-by-side variant builds, and is easily extended with user- defined Builder and/or Scanner objects.
%prep
%autosetup -n %{name}-%{version} -N
%setup -n %{name}-%{version} -q -T -D -a 1
cd ..
pathfix.py -i %{__python3} -pn %{name}-%{version}/scripts/scons.py
sed -i -e 's!env.AddPostAction(tgz_file, Delete(man_pages))! !g' %{name}-%{version}/SConstruct
%build
%{__python3} scripts/scons.py \
%if %{with debug}
--debug=explain \
%endif
%install
export LDFLAGS="%{build_ldflags}"
export CFLAGS="%{build_cflags}"
%py3_install -- --install-scripts=%{_bindir} --install-data=%{_datadir}
pushd %{buildroot}%{_bindir}
for i in %{name}-3 %{name}-v%{version}-%{python3_version} %{name}-%{python3_version}; do
ln -fs %{name} %{buildroot}%{_bindir}/$i
done
for i in %{name}ign-3 %{name}ign-v%{version}-%{python3_version} %{name}ign-%{python3_version}; do
ln -fs %{name}ign %{buildroot}%{_bindir}/$i
done
for i in %{name}-configure-cache-3 %{name}-configure-cache-v%{version}-%{python3_version} %{name}-configure-cache-%{python3_version}; do
ln -fs %{name}-configure-cache %{buildroot}%{_bindir}/$i
done
popd
rm -rfv %{buildroot}%{_bindir}/__pycache__
mkdir -p %{buildroot}%{_mandir}/man1
install -pm 644 build/doc/man/*.1 %{buildroot}%{_mandir}/man1/
rm -f %{buildroot}%{_datadir}/*.1
%check
%{__python3} runtest.py -P %{__python3} --passed --quit-on-failure SCons/BuilderTests.py
%files -n python3-%{name}
%license LICENSE*
%doc CHANGES.txt RELEASE.* PDF EPUB TEXT
%{_bindir}/%{name}
%{_bindir}/%{name}ign
%{_bindir}/%{name}-configure-cache
%{_bindir}/%{name}*-3*
%{python3_sitelib}/SCons/
%{python3_sitelib}/*.egg-info/
%{_mandir}/man1/*
%changelog
* Thu Sep 26 2024 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-7
- Rebuilt for clarifying the packages requirement in BaseOS and AppStream
* Fri Aug 16 2024 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-6
- Rebuilt for loongarch release
* Tue Sep 19 2023 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-5
- Rebuilt for python 3.11
* Fri Sep 08 2023 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-4
- Rebuilt for OpenCloudOS Stream 23.09
* Fri Apr 28 2023 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-3
- Rebuilt for OpenCloudOS Stream 23.05
* Fri Mar 31 2023 OpenCloudOS Release Engineering <[email protected]> - 4.4.0-2
- Rebuilt for OpenCloudOS Stream 23
* Wed Nov 30 2022 Shuo Wang <[email protected]> - 4.4.0-1
- initial build
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/opencloudos-stream/scons.git
[email protected]:opencloudos-stream/scons.git
opencloudos-stream
scons
scons
master

搜索帮助