124 lines
3.2 KiB
RPMSpec
124 lines
3.2 KiB
RPMSpec
|
#% define with_pie 1
|
||
|
Name: go
|
||
|
Version: 1.10.1
|
||
|
Release: 2mamba
|
||
|
Summary: The Go programming language
|
||
|
Group: Applications/Development
|
||
|
Vendor: openmamba
|
||
|
Distribution: openmamba
|
||
|
Packager: Silvan Calarco <silvan.calarco@mambasoft.it>
|
||
|
URL: https://golang.org
|
||
|
## GITSOURCE https://github.com/golang/go.git go1.10.1
|
||
|
Source: https://github.com/golang/go.git/go%{version}/go-%{version}.tar.bz2
|
||
|
Patch0: go-1.10.1-default-buildmode-pie.patch
|
||
|
License: BSD
|
||
|
## AUTOBUILDREQ-BEGIN
|
||
|
BuildRequires: glibc-devel
|
||
|
BuildRequires: ldconfig
|
||
|
BuildRequires: libperl
|
||
|
BuildRequires: perl-devel
|
||
|
## AUTOBUILDREQ-END
|
||
|
Conflicts: gcc-go
|
||
|
Provides: go
|
||
|
%if "%{with_pie}" == "1"
|
||
|
Conflicts: go
|
||
|
%else
|
||
|
Conflicts: go-pie
|
||
|
%endif
|
||
|
BuildRoot: %{_tmppath}/%{name}-%{version}-root
|
||
|
|
||
|
%description
|
||
|
The Go programming language.
|
||
|
|
||
|
%package pie
|
||
|
Group: Applications/Development
|
||
|
Summary: The Go programming language (with PIE enabled by default)
|
||
|
|
||
|
%description pie
|
||
|
The Go programming language (with PIE enabled by default).
|
||
|
|
||
|
%debug_package
|
||
|
|
||
|
%prep
|
||
|
%setup -q
|
||
|
%if "%{with_pie}" == "1"
|
||
|
%patch0 -p1
|
||
|
%endif
|
||
|
|
||
|
%define _use_internal_dependency_generator 0
|
||
|
|
||
|
%define __find_provides %{_builddir}/go-%{version}/find_provides.sh
|
||
|
cat > %{_builddir}/go-%{version}/find_provides.sh <<_EOF
|
||
|
#! /bin/sh
|
||
|
%{_prefix}/lib/rpm/find-provides %{buildroot} %{_target_cpu}
|
||
|
_EOF
|
||
|
chmod +x %{_builddir}/go-%{version}/find_provides.sh
|
||
|
|
||
|
%define __find_requires %{_builddir}/go-%{version}/find_requires.sh
|
||
|
cat > %{_builddir}/go-%{version}/find_requires.sh <<_EOF
|
||
|
#! /bin/sh
|
||
|
grep -v %{buildroot}%{_libdir}/go/src/ | \
|
||
|
%{_prefix}/lib/rpm/find-requires %{buildroot} %{_target_cpu} 2>/dev/null
|
||
|
_EOF
|
||
|
chmod +x %{_builddir}/go-%{version}/find_requires.sh
|
||
|
|
||
|
%build
|
||
|
export GOPATH="`pwd`/"
|
||
|
|
||
|
export GOROOT="$GOPATH"
|
||
|
export GOBIN="$GOROOT/bin"
|
||
|
|
||
|
cd "$GOPATH/src"
|
||
|
./make.bash --no-clean -v
|
||
|
|
||
|
PATH="$GOBIN:$PATH" go install -v -buildmode=shared std
|
||
|
%ifarch x86_64
|
||
|
PATH="$GOBIN:$PATH" go install -v -race std
|
||
|
%endif
|
||
|
|
||
|
%install
|
||
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||
|
export GOPATH="`pwd`/"
|
||
|
options=(!strip staticlibs)
|
||
|
|
||
|
install -d %{buildroot}{%{_bindir},%{_libdir}/go,%{_docdir}/go}
|
||
|
|
||
|
cp -a bin pkg src lib misc %{buildroot}%{_libdir}/go
|
||
|
cp -r doc/* %{buildroot}%{_docdir}/go
|
||
|
|
||
|
ln -sf %{_libdir}/go/bin/go %{buildroot}%{_bindir}/go
|
||
|
ln -sf %{_libdir}/go/bin/gofmt %{buildroot}%{_bindir}/gofmt
|
||
|
ln -sf %{_docdir}/go %{buildroot}%{_libdir}/go/doc
|
||
|
|
||
|
install -Dm644 LICENSE %{buildroot}%{_datadir}/licenses/go/LICENSE
|
||
|
install -Dm644 VERSION %{buildroot}%{_libdir}/go/VERSION
|
||
|
|
||
|
rm -rf %{buildroot}%{_libdir}/go/pkg/bootstrap
|
||
|
rm -rf %{buildroot}%{_libdir}/go/pkg/tool/*/api
|
||
|
rm -rf %{buildroot}%{_libdir}/go/src/*.rc
|
||
|
|
||
|
%clean
|
||
|
[ "%{buildroot}" != / ] && rm -rf "%{buildroot}"
|
||
|
|
||
|
%if "%{with_pie}" == "1"
|
||
|
%files pie
|
||
|
%else
|
||
|
%files
|
||
|
%endif
|
||
|
%defattr(-,root,root)
|
||
|
%{_bindir}/go
|
||
|
%{_bindir}/gofmt
|
||
|
%dir %{_libdir}/go
|
||
|
%{_libdir}/go/*
|
||
|
%dir %{_datadir}/doc/go
|
||
|
%{_datadir}/doc/go/*
|
||
|
%{_datadir}/licenses/go/LICENSE
|
||
|
#%doc README.md
|
||
|
|
||
|
%changelog
|
||
|
* Tue Apr 24 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 1.10.1-2mamba
|
||
|
- remove testdata binaries for other architectures
|
||
|
|
||
|
* Thu Apr 19 2018 Silvan Calarco <silvan.calarco@mambasoft.it> 1.10.1-1mamba
|
||
|
- package created using the webbuild interface
|