]>
Commit | Line | Data |
---|---|---|
de91f760 | 1 | |
0b08143e | 2 | # TODO |
0b08143e | 3 | # - any policy what to package in %{ruby_ridir}? |
3b2fbb03 | 4 | # |
de91f760 ER |
5 | # Conditional build: |
6 | %bcond_without tests # build without tests | |
d2252ce8 | 7 | %bcond_without doc # don't build ri/rdoc |
de91f760 | 8 | |
7911ee90 | 9 | %define pkgname MODULE_NAME |
d4eb3bf7 | 10 | Summary: - |
50446ee9 | 11 | Name: ruby-%{pkgname} |
d4eb3bf7 ER |
12 | Version: - |
13 | Release: 0.1 | |
14 | License: - (enter GPL/GPL v2/GPL v3+/LGPL/MIT/Ruby License/other license name here) | |
316bafdd JR |
15 | #Source0: http://rubyforge.org/frs/download.php/18699/%{pkgname}-%{version}.tgz |
16 | Source0: http://rubygems.org/downloads/%{pkgname}-%{version}.gem | |
d4eb3bf7 ER |
17 | # Source0-md5: - |
18 | Group: Development/Languages | |
19 | URL: http://rubyforge.org/projects/.../ | |
f8e41d71 | 20 | BuildRequires: rpm-rubyprov |
6d4ddd20 ER |
21 | BuildRequires: rpmbuild(macros) >= 1.665 |
22 | #BuildRequires: setup.rb | |
23 | # optional locale BR, see ri/rdoc building below | |
24 | #%if %(locale -a | grep -q '^en_US$'; echo $?) | |
25 | #BuildRequires: glibc-localedb-all | |
26 | #%endif | |
77dfa72b ER |
27 | %if %{with tests} |
28 | #BuildRequires: ruby-rspec | |
29 | %endif | |
d4eb3bf7 ER |
30 | #BuildArch: noarch |
31 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
32 | ||
d4eb3bf7 ER |
33 | %description |
34 | ... | |
35 | ||
36 | %package rdoc | |
bc42e01e JR |
37 | Summary: HTML documentation for %{pkgname} |
38 | Summary(pl.UTF-8): Dokumentacja w formacie HTML dla %{pkgname} | |
d4eb3bf7 | 39 | Group: Documentation |
fd8a3aae | 40 | Requires: ruby >= 1:1.8.7-4 |
d4eb3bf7 ER |
41 | |
42 | %description rdoc | |
bc42e01e JR |
43 | HTML documentation for %{pkgname}. |
44 | ||
45 | %description rdoc -l pl.UTF-8 | |
46 | Dokumentacja w formacie HTML dla %{pkgname}. | |
47 | ||
48 | %package ri | |
49 | Summary: ri documentation for %{pkgname} | |
50 | Summary(pl.UTF-8): Dokumentacja w formacie ri dla %{pkgname} | |
51 | Group: Documentation | |
52 | Requires: ruby | |
53 | ||
54 | %description ri | |
55 | ri documentation for %{pkgname}. | |
56 | ||
57 | %description ri -l pl.UTF-8 | |
58 | Dokumentacji w formacie ri dla %{pkgname}. | |
d4eb3bf7 ER |
59 | |
60 | %prep | |
6d4ddd20 ER |
61 | # gem |
62 | %setup -q -n %{pkgname}-%{version} | |
316bafdd JR |
63 | # tgz |
64 | #%setup -q -n %{pkgname}-%{version} | |
65 | ||
f8e41d71 ER |
66 | # ext build |
67 | cp -p %{_datadir}/setup.rb . | |
68 | ||
fd8a3aae ER |
69 | # cleanup backups after patching |
70 | find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f | |
71 | ||
d4eb3bf7 | 72 | %build |
de91f760 ER |
73 | # write .gemspec |
74 | %__gem_helper spec | |
75 | ||
76d858ef ER |
76 | # make gemspec self-contained |
77 | ruby -r rubygems -e 'spec = eval(File.read("%{pkgname}.gemspec")) | |
78 | File.open("%{pkgname}-%{version}.gemspec", "w") do |file| | |
79 | file.puts spec.to_ruby_for_cache | |
80 | end' | |
81 | ||
b1e75c3c ER |
82 | #' |
83 | ||
8cb1efbe | 84 | %if old |
90a8c969 | 85 | cp %{_datadir}/setup.rb . |
dbe6a312 | 86 | %{__ruby} setup.rb config \ |
8cb1efbe ER |
87 | --rbdir=%{ruby_vendorlibdir} \ |
88 | --sodir=%{ruby_vendorarchdir} | |
90a8c969 | 89 | |
33481455 ER |
90 | ruby setup.rb config \ |
91 | --site-ruby=%{ruby_vendorlibdir} \ | |
92 | --so-dir=%{ruby_vendorarchdir} | |
93 | ||
f8e41d71 ER |
94 | ruby extconf.rb --vendor --with-pgsql-include=%{_includedir}/pgsql/server |
95 | ||
96 | ruby setup.rb config \ | |
8cb1efbe ER |
97 | --prefix=%{_prefix} \ |
98 | --siterubyver=%{ruby_vendorlibdir} \ | |
99 | --siterubyverarch=%{ruby_vendorarchdir} \ | |
f8e41d71 ER |
100 | |
101 | ruby setup.rb config \ | |
8cb1efbe ER |
102 | --prefix=%{_prefix} \ |
103 | --site-ruby=%{ruby_vendorlibdir} | |
f8e41d71 ER |
104 | |
105 | %{__ruby} install.rb \ | |
106 | --sitelibdir=%{ruby_vendorlibdir} \ | |
107 | ||
108 | %cmake \ | |
8cb1efbe ER |
109 | -DCUSTOM_RUBY_SITE_ARCH_DIR:PATH=%{ruby_vendorarchdir} \ |
110 | -DCUSTOM_RUBY_SITE_LIB_DIR:PATH=%{ruby_vendorlibdir} \ | |
111 | .. | |
f8e41d71 ER |
112 | |
113 | ruby setup.rb setup | |
114 | ||
dbe6a312 | 115 | %{__ruby} setup.rb setup |
8cb1efbe | 116 | %endif |
d4eb3bf7 | 117 | |
5f1d2bba | 118 | # binary pkgs: |
6d4ddd20 | 119 | cd ext/%{pkgname} |
5f1d2bba ER |
120 | %{__ruby} extconf.rb |
121 | %{__make} \ | |
122 | CC="%{__cc}" \ | |
123 | LDFLAGS="%{rpmldflags}" \ | |
124 | CFLAGS="%{rpmcflags} -fPIC" | |
125 | ||
8cb1efbe | 126 | # with rdoc/ri: |
6d4ddd20 ER |
127 | # optional locale force, see BR above as well |
128 | # UTF8 locale needed for doc generation | |
129 | #export LC_ALL=en_US.UTF-8 | |
130 | ||
8cb1efbe ER |
131 | rdoc --ri --op ri lib |
132 | rdoc --op rdoc lib | |
133 | # rm -r ri/NOT_THIS_MODULE_RELATED_DIRS | |
134 | rm ri/created.rid | |
135 | ||
d4eb3bf7 ER |
136 | %install |
137 | rm -rf $RPM_BUILD_ROOT | |
6d4ddd20 ER |
138 | install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_ridir},%{ruby_rdocdir}} |
139 | install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_ridir},%{ruby_rdocdir},%{_bindir}} | |
dbe6a312 ER |
140 | %{__ruby} setup.rb install \ |
141 | --prefix=$RPM_BUILD_ROOT | |
bc42e01e | 142 | |
f8e41d71 ER |
143 | install -d $RPM_BUILD_ROOT%{ruby_vendorlibdir} |
144 | cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir} | |
145 | ||
146 | cp -a bin/* $RPM_BUILD_ROOT%{_bindir} | |
6d4ddd20 | 147 | cp -a lib/* $RPM_BUILD_ROOT%{ruby_vendorlibdir} |
f8e41d71 | 148 | |
d4eb3bf7 | 149 | cp -a ri/* $RPM_BUILD_ROOT%{ruby_ridir} |
f8e41d71 | 150 | |
8cb1efbe ER |
151 | # install ext |
152 | install -d $RPM_BUILD_ROOT%{ruby_vendorarchdir} | |
153 | install -p ext/ruby_http_parser/ruby_http_parser.so $RPM_BUILD_ROOT%{ruby_vendorarchdir} | |
154 | ||
f8e41d71 ER |
155 | install -d $RPM_BUILD_ROOT%{ruby_rdocdir}/%{name}-%{version} |
156 | cp -a rdoc/* $RPM_BUILD_ROOT%{ruby_rdocdir}/%{name}-%{version} | |
d4eb3bf7 | 157 | |
de91f760 ER |
158 | # install gemspec |
159 | install -d $RPM_BUILD_ROOT%{ruby_specdir} | |
33481455 | 160 | install -d $RPM_BUILD_ROOT{%{ruby_vendorlibdir},%{ruby_specdir}} |
de91f760 ER |
161 | cp -p %{pkgname}-%{version}.gemspec $RPM_BUILD_ROOT%{ruby_specdir} |
162 | ||
42f9fffd ER |
163 | # install examples |
164 | install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
165 | cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version} | |
166 | ||
d4eb3bf7 ER |
167 | %clean |
168 | rm -rf $RPM_BUILD_ROOT | |
169 | ||
170 | %files | |
171 | %defattr(644,root,root,755) | |
172 | %doc CHANGELOG README | |
6d4ddd20 ER |
173 | %{ruby_vendorlibdir}/%{pkgname}.rb |
174 | %{ruby_vendorlibdir}/%{pkgname} | |
175 | %attr(755,root,root) %{ruby_vendorarchdir}/%{pkgname}_ext.so | |
de91f760 | 176 | %{ruby_specdir}/%{pkgname}-%{version}.gemspec |
42f9fffd | 177 | %{_examplesdir}/%{name}-%{version} |
d4eb3bf7 | 178 | |
d2252ce8 | 179 | %if %{with doc} |
d4eb3bf7 ER |
180 | %files rdoc |
181 | %defattr(644,root,root,755) | |
fd8a3aae | 182 | %{ruby_rdocdir}/%{name}-%{version} |
bc42e01e JR |
183 | |
184 | %files ri | |
185 | %defattr(644,root,root,755) | |
316bafdd | 186 | %{ruby_ridir}/%{pkgname} |
d2252ce8 | 187 | %endif |