Package golang-github-julienschmidt-httprouter: Specfile
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | Group: Development/Other # BEGIN SourceDeps(oneline): BuildRequires(pre): rpm-macros-golang BuildRequires: rpm-build-golang # END SourceDeps(oneline) # see https://bugzilla.altlinux.org/show_bug.cgi?id=10382 %define _localstatedir %{_var} # If any of the following macros should be set otherwise, # you can wrap any of them with the following conditions: # - %%if 0%%{centos} == 7 # - %%if 0%%{?rhel} == 7 # - %%if 0%%{?fedora} == 23 # Or just test for particular distribution: # - %%if 0%%{centos} # - %%if 0%%{?rhel} # - %%if 0%%{?fedora} # # Be aware, on centos, both %%rhel and %%centos are set. If you want to test # rhel specific macros, you can use %%if 0%%{?rhel} && 0%%{?centos} == 0 condition. # (Don't forget to replace double percentage symbol with single one in order to apply a condition) # Generate devel rpm %global with_devel 1 # Build project from bundled dependencies %global with_bundled 0 # Build with debug info rpm %global with_debug 0 # Run tests in check section %global with_check 1 # Generate unit-test rpm %global with_unit_test 1 %if 0%{?with_debug} %global _dwz_low_mem_die_limit 0 %else %global debug_package %{nil} %endif %global isgccgoarch 0 %if 0%{?gccgo_arches:1} %ifarch %{gccgo_arches} %global isgccgoarch 1 %endif %endif %global provider github %global provider_tld com %global project julienschmidt %global repo httprouter # https://github.com/julienschmidt/httprouter %global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo} %global import_path %{provider_prefix} %global commit 6aacfd5ab513e34f7e64ea9627ab9670371b34e7 %global shortcommit %(c=%{commit}; echo ${c:0:7}) Name: golang-%{provider}-%{project}-%{repo} Version: 1.1 Release: alt0.M70C.1 Summary: A high performance HTTP request router that scales well License: BSD URL: https://%{provider_prefix} Source0: https://%{provider_prefix}/archive/%{commit}/%{repo}-%{shortcommit}.tar.gz BuildArch: noarch # e.g. el6 has ppc64 arch without gcc-go, so EA tag is required ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm}} # If go_compiler is not set to 1, there is no virtual provide. Use golang instead. BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang} Source44: import.info %description %{summary} %if 0%{?with_devel} %package devel Group: Development/Other Summary: %{summary} %if 0%{?with_check} %endif Provides: golang(%{import_path}) = %{version}-%{release} %description devel %{summary} This package contains library source intended for building other packages which use import path with %{import_path} prefix. %endif %if 0%{?with_unit_test} && 0%{?with_devel} %package unit-test Group: Development/Other Summary: Unit tests for %{name} package # If go_compiler is not set to 1, there is no virtual provide. Use golang instead. BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang} %if 0%{?with_check} #Here comes all BuildRequires: PACKAGE the unit tests #in %%check section need for running %endif # test subpackage tests code from devel subpackage %description unit-test %{summary} This package contains unit tests for project providing packages with %{import_path} prefix. %endif %prep %setup -q -n %{repo}-%{commit} %build %install # source codes for building projects %if 0%{?with_devel} install -d -p %{buildroot}/%{go_path}/src/%{import_path}/ echo "%%dir %%{go_path}/src/%%{import_path}/." >> devel.file-list # find all *.go but no *_test.go files and generate devel.file-list for file in $(find . -iname "*.go" \! -iname "*_test.go") ; do echo "%%dir %%{go_path}/src/%%{import_path}/$(dirname $file)" >> devel.file-list install -d -p %{buildroot}/%{go_path}/src/%{import_path}/$(dirname $file) cp -pav $file %{buildroot}/%{go_path}/src/%{import_path}/$file echo "%%{go_path}/src/%%{import_path}/$file" >> devel.file-list done %endif # testing files for this project %if 0%{?with_unit_test} && 0%{?with_devel} install -d -p %{buildroot}/%{go_path}/src/%{import_path}/ # find all *_test.go files and generate unit-test.file-list for file in $(find . -iname "*_test.go"); do echo "%%dir %%{go_path}/src/%%{import_path}/$(dirname $file)" >> devel.file-list install -d -p %{buildroot}/%{go_path}/src/%{import_path}/$(dirname $file) cp -pav $file %{buildroot}/%{go_path}/src/%{import_path}/$file echo "%%{go_path}/src/%%{import_path}/$file" >> unit-test.file-list done %endif %if 0%{?with_devel} sort -u -o devel.file-list devel.file-list %endif %check %if 0%{?with_check} && 0%{?with_unit_test} && 0%{?with_devel} %if %{isgccgoarch} function gotest { %{gcc_go_test} "$@"; } %else %if 0%{?golang_test:1} function gotest { %{golang_test} "$@"; } %else function gotest { go test "$@"; } %endif %endif %if ! 0%{?with_bundled} export GOPATH=%{buildroot}/%{go_path}:%{go_path} %else export GOPATH=%{buildroot}/%{go_path}:$(pwd)/Godeps/_workspace:%{go_path} %endif %if ! 0%{?gotest:1} %global gotest go test %endif %gotest %{import_path} %endif #define license tag if not already defined %{!?_licensedir:%global license %doc} %if 0%{?with_devel} %files devel -f devel.file-list %doc LICENSE %doc README.md %dir %{go_path}/src/%{provider}.%{provider_tld}/%{project} %endif %if 0%{?with_unit_test} && 0%{?with_devel} %files unit-test -f unit-test.file-list %doc LICENSE %doc README.md %endif %changelog * Wed Jul 25 2018 Lenar Shakirov <snejok@altlinux.ru> 1.1-alt0.M70C.1 - Backport to C7: made whole package NOARCH * Sat Dec 09 2017 Igor Vlasenko <viy@altlinux.ru> 1.1-alt1_9 - new version |