%global debug_package %{nil}
%global pkgname github-gorilla-mux
%global import_path github.com/gorilla/mux
%global goroot %(go env GOROOT)
%global pkgarch %(go env GOOS)_%(go env GOARCH)
%global commit e718e932ee606838744df844eb75064959eb74bc
%global shortcommit %(c=%{commit}; echo ${c:0:7})
Name: golang-%{pkgname}
Version: 0
Release: 0.5.git%{shortcommit}%{?dist}
Summary: A powerful URL router and dispatcher for golang
License: BSD
URL: http://www.gorillatoolkit.org/pkg/mux
Source0: https://github.com/gorilla/mux/archive/%{commit}/mux-%{shortcommit}.tar.gz
%description
Package gorilla/mux implements a request router and dispatcher.
The name mux stands for "HTTP request multiplexer". Like the standard
http.ServeMux, mux.Router matches incoming requests against a list of
registered routes and calls a handler for the route that matches the URL or
other conditions.
%package devel
BuildRequires: golang("github.com/gorilla/context")
Requires: golang("github.com/gorilla/context")
Summary: A powerful URL router and dispatcher for golang
Provides: golang("%{import_path}") = %{version}-%{release}
%description devel
%{summary}
%prep
%setup -c
mkdir -p src/$(dirname %{import_path})
cp -R mux-%{commit} src/%{import_path}
%build
unset GOROOT GOPATH GOOS GOARCH
if [ ! -d %{goroot}/src/pkg/%{import_path} ]; then
GOPATH=$(readlink -f .) go install %{import_path}
else
GOPATH=$(readlink -f .)
pushd $GOPATH/src
for dir in $(find %{import_path} -type d) ; do
mkdir -p $GOPATH/pkg/%{pkgarch}/$(dirname $dir)
go build -o $GOPATH/pkg/%{pkgarch}/${dir}.a %{import_path}
done
popd
fi
%install
mkdir -p %{buildroot}/%{goroot}/src/pkg/%{import_path}
cp -a src/%{import_path}/*.go %{buildroot}/%{goroot}/src/pkg/%{import_path}
mkdir -p %{buildroot}%{goroot}/pkg/
cp -a pkg/* %{buildroot}%{goroot}/pkg/
%files devel
%defattr(-,root,root,-)
%doc src/%{import_path}/LICENSE src/%{import_path}/README.md
%dir %attr(755,root,root) %{goroot}/src/pkg/github.com
%dir %attr(755,root,root) %{goroot}/src/pkg/github.com/gorilla
%dir %attr(755,root,root) %{goroot}/src/pkg/%{import_path}
%{goroot}/src/pkg/%{import_path}/bench_test.go
%{goroot}/src/pkg/%{import_path}/doc.go
%{goroot}/src/pkg/%{import_path}/mux.go
%{goroot}/src/pkg/%{import_path}/mux_test.go
%{goroot}/src/pkg/%{import_path}/old_test.go
%{goroot}/src/pkg/%{import_path}/regexp.go
%{goroot}/src/pkg/%{import_path}/route.go
%dir %attr(755,root,root) %{goroot}/pkg/%{pkgarch}/github.com
%dir %attr(755,root,root) %{goroot}/pkg/%{pkgarch}/github.com/gorilla
%{goroot}/pkg/%{pkgarch}/%{import_path}.a
%changelog
* Tue Sep 17 2013 Lokesh Mandvekar <lsm5@redhat.com> 0-0.5.gite718e93
- Version format changed
- docdir changed
- debuginfo no longer generated
- package owns all directories in import_path
* Mon Sep 16 2013 Lokesh Mandvekar <lsm5@redhat.com> gite718e93-4
- only devel package generated
- Provides moved to devel package
* Tue Sep 10 2013 Lokesh Mandvekar <lsm5@redhat.com> gite718e93-3
- Depends on golang("github.com/gorilla/context"), not golang directly
- Pkg archives handled (thanks to Vincent Batts (vbatts@redhat.com)
- Devel package generated
* Wed Aug 28 2013 Lokesh Mandvekar <lsm5@redhat.com> 0.0.1-2
- Fixed permissions
* Mon Aug 26 2013 Lokesh Mandvekar <lsm5@redhat.com> 0.0.1-1
- Initial fedora package