/[packages]/cauldron/mageia-release/current/SPECS/mageia-release.spec
ViewVC logotype

Contents of /cauldron/mageia-release/current/SPECS/mageia-release.spec

Parent Directory Parent Directory | Revision Log Revision Log


Revision 101465 - (show annotations) (download)
Tue Jun 7 10:57:42 2011 UTC (12 years, 10 months ago) by boklm
File size: 6837 byte(s)
Mageia Cauldron Release 2
1 # Please update release notes:
2 # make -C SOURCES release-notes.{html,txt}
3 #
4
5 %define am_i_cauldron 1
6 %if %am_i_cauldron
7 %define distrib Cauldron
8 %else
9 %define distrib Official
10 %endif
11 %define version 2
12 %define rel 0.1
13 %define distname cauldron
14 %define distsuffix .mga
15 %define distribution Mageia
16 %define lc_distro %(echo %{distribution} | tr "A-Z" "a-z")
17
18 %define product_vendor Mageia.Org
19 %define product_distribution %distribution
20 %define product_type Basic
21 %if %am_i_cauldron
22 %define product_version %distrib
23 %else
24 %define product_version %version
25 %endif
26 %if %am_i_cauldron
27 %define product_branch Devel
28 %else
29 %define product_branch Official
30 %endif
31 %define product_release 1
32 %define product_arch %{_target_cpu}
33
34 %define product_id_base vendor=%product_vendor,distribution=%product_distribution,type=%product_type,version=%product_version,branch=%product_branch,release=%product_release,arch=%product_arch
35
36 %if %am_i_cauldron
37 %define unstable %%_with_unstable --with-unstable
38 %endif
39
40 # The distro release, what is written on box
41 %define distro_release %version
42
43 # The distro branch: Cauldron or Official
44 %define distro_branch %distrib
45
46 # The distro arch, notice: using %_target_cpu is bad
47 # elsewhere because this depend of the config of the packager
48 # _target_cpu => package build for
49 # distro_arch => the distribution we are using
50 %define distro_arch %_target_cpu
51
52 # To be coherent with %distro_arch I provide os too
53 # be I wonder it will be linux for a long time
54 %define distro_os %_target_os
55
56 %define realversion %version
57 %define mgaver %(echo %version | sed 's/\\.//')
58
59 Summary: %{distribution} release file
60 Name: %{lc_distro}-release
61 Version: %version
62 Release: %mkrel %rel
63 License: GPL
64 URL: http://www.mageia.org/
65 Group: System/Configuration/Other
66 Source3: CREDITS
67 # edited lynx -dump of wiki:
68 Source4: release-notes.txt
69 Source5: release-notes.html
70 Source6: ldap-names.py
71 BuildRoot: %{_tmppath}/%{name}-root
72
73 %description
74 %{distribution} release file.
75
76 %package common
77 Summary: %{distribution} release common files
78 Group: System/Configuration/Other
79 Requires: lsb-release
80 Conflicts: %name < %version-%release
81 Obsoletes: %name < %version-%release
82 Obsoletes: mandrake-release mandrakelinux-release mandriva-release
83 Obsoletes: mandriva-release-common
84 Obsoletes: rawhide-release redhat-release
85 Obsoletes: mandriva-doc-common
86
87 # cf mdvbz#32631
88 Provides: arch(%_target_cpu)
89 Provides: %arch_tagged %{lc_distro}-release-common
90
91 %description common
92 Common files for %{distribution} release packages.
93
94 %define release_package(s) \
95 %{-s:%package %1} \
96 Summary: %{distribution} release file%{?1: for %1} \
97 Group: System/Configuration/Other \
98 Requires: %{arch_tagged %{lc_distro}-release-common} \
99 Requires(post): coreutils \
100 Provides: redhat-release rawhide-release mandrake-release mandrakelinux-release mandriva-release\
101 Provides: %name = %version-%release \
102
103 %define release_descr(s) \
104 %description %{-s:%1} \
105 %{distribution} release file for %1 flavor. \
106
107
108 %define release_post(s) \
109 %post %{-s:%1} \
110 ln -fs product.id.%1 /etc/product.id
111
112
113 %define release_install(s) \
114 cat > %buildroot/etc/product.id.%{1} << EOF \
115 %{product_id_base},product=%1\
116 EOF\
117 \
118 mkdir -p %buildroot%_sys_macros_dir \
119 cat > %buildroot%_sys_macros_dir/%{1}.macros <<EOF \
120 %%distribution %distribution\
121 %%mandriva_release %distro_release\
122 %%distro_release %distro_release\
123 %%distro_branch %distro_branch\
124 %%distro_arch %distro_arch\
125 %%distro_os %distro_os\
126 %%distro_class %%(. %_sysconfdir/sysconfig/system; echo \\\$META_CLASS)\
127 %%mdkver %mgaver\
128 %%mdvver %mgaver\
129 %%mgaver %mgaver\
130 %%distsuffix %distsuffix\
131 \
132 # productid variable\
133 %%product_id %{product_id_base},product=%{1}\
134 \
135 %%product_vendor %product_vendor\
136 %%product_distribution %product_distribution\
137 %%product_type %product_type\
138 %%product_version %product_version\
139 %%product_branch %product_branch\
140 %%product_release %product_release\
141 %%product_arch %product_arch\
142 %%product_product %1\
143 \
144 %{?unstable}\
145 EOF\
146 \
147 mkdir -p %buildroot%_sysconfdir/sysconfig \
148 cat > %buildroot%_sysconfdir/sysconfig/system <<EOF \
149 SECURITY=3\
150 CLASS=beginner\
151 LIBSAFE=no\
152 META_CLASS=download\
153 EOF\
154
155
156 %release_package -s Default
157 Obsoletes: mandriva-release-Flash mandriva-release-Free mandriva-release-Mini mandriva-release-One mandriva-release-Powerpack
158
159 %release_descr -s Default
160
161 %prep
162 #%setup -q -n %{name}
163 cp -a %SOURCE3 CREDITS
164 cp -a %SOURCE4 release-notes.txt
165 cp -a %SOURCE5 release-notes.html
166 cat > README.urpmi <<EOF
167 This is %{distribution} %version
168
169 You can find the release notes in %_docdir/%name-common/release-notes.txt
170 EOF
171
172 # check that CREDITS file is in UTF-8, fail otherwise
173 if iconv -f utf-8 -t utf-8 < CREDITS > /dev/null
174 then
175 true
176 else
177 echo "the CREDITS file *MUST* be encoded in UTF-8"
178 echo "please fix it before continuing"
179 false
180 fi
181
182 %install
183 rm -rf $RPM_BUILD_ROOT
184 mkdir -p %buildroot/etc
185 echo "%{distribution} release %{realversion} (%{distrib}) for %{_target_cpu}" > $RPM_BUILD_ROOT/etc/%{lc_distro}-release
186 ln -sf %{lc_distro}-release $RPM_BUILD_ROOT/etc/redhat-release
187 ln -sf %{lc_distro}-release $RPM_BUILD_ROOT/etc/mandrake-release
188 ln -sf %{lc_distro}-release $RPM_BUILD_ROOT/etc/mandrakelinux-release
189 ln -sf %{lc_distro}-release $RPM_BUILD_ROOT/etc/mandriva-release
190 ln -sf %{lc_distro}-release $RPM_BUILD_ROOT/etc/release
191 echo "%{version} %{rel} %{distname}" > $RPM_BUILD_ROOT/etc/version
192
193 mkdir -p %buildroot%_sysconfdir/profile.d
194 cat > %buildroot%_sysconfdir/profile.d/10%{lc_distro}-release.csh<<'EOF'
195 if ( -r /etc/sysconfig/system ) then
196 eval `sed 's|^#.*||' /etc/sysconfig/system | sed 's|\([^=]*\)=\([^=]*\)|set \1=\2|g' | sed 's|$|;|' `
197 setenv META_CLASS $META_CLASS
198 else
199 setenv META_CLASS unknown
200 endif
201 EOF
202
203 cat > %buildroot%_sysconfdir/profile.d/10%{lc_distro}-release.sh<<'EOF'
204 if [ -r /etc/sysconfig/system ]; then
205 . /etc/sysconfig/system
206 export META_CLASS
207 else
208 export META_CLASS=unknown
209 fi
210 EOF
211
212 %release_install Default
213
214 touch %buildroot%_sysconfdir/product.id
215
216
217 %check
218 %if %am_i_cauldron
219 case %release in
220 0.*) ;;
221 *)
222 echo "Cauldron distro should have this package with release < %{mkrel 1}"
223 exit 1
224 ;;
225 esac
226 %endif
227
228 %clean
229 rm -rf $RPM_BUILD_ROOT
230
231 %release_post -s Default
232
233 %define release_files(s:) \
234 %files %{-s:%{-s*}} \
235 %defattr(-,root,root) \
236 %_sys_macros_dir/%{1}.macros \
237 /etc/product.id.%1 \
238 %ghost /etc/product.id\
239 \
240
241 %release_files -s Default Default
242
243 %files common
244 %defattr(-,root,root)
245 %doc CREDITS release-notes.*
246 /etc/mandrake-release
247 /etc/mandrakelinux-release
248 /etc/mandriva-release
249 /etc/redhat-release
250 /etc/%{lc_distro}-release
251 /etc/release
252 /etc/version
253 /etc/profile.d/10%{lc_distro}-release.sh
254 /etc/profile.d/10%{lc_distro}-release.csh
255 %config(noreplace) %verify(not md5 size mtime) %_sysconfdir/sysconfig/system

  ViewVC Help
Powered by ViewVC 1.1.30