2 # disable rpm generated debug package, we handle it differently here
3 %define _enable_debug_packages 0
5 # avoid rpm 4.4.9 adding rm -rf buildroot
6 %define __spec_clean_body %{nil}
7 Summary: Common directories
8 Summary(pl.UTF-8): Wspólne katalogi
14 BuildRequires: automake
16 BuildRequires: rpm >= 4.4.9-56
17 Requires: FHS >= 2.3-15
18 Provides: browser-plugins(%{_target_base_arch})
20 Provides: browser-plugins(i386)
23 Provides: browser-plugins(ppc)
26 Provides: browser-plugins(s390)
29 Provides: browser-plugins(sparc)
31 Provides: filesystem-debuginfo = %{version}-%{release}
32 Obsoletes: filesystem-debuginfo < 3.0-36
33 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
35 # Adapter: This file does not like to be adapterized!
37 # directory for "privilege separation" chroot
38 %define _privsepdir /usr/share/empty
39 # directory for *.idl files (for CORBA implementations)
40 %define _idldir /usr/share/idl
43 This package contains common directories for packages that extend some
44 programs functionality, but don't require them themselves.
46 %description -l pl.UTF-8
47 Ten pakiet zawiera wspólne katalogi dla pakietów rozszerzających
48 funkcjonalność programów, ale nie wymagających ich.
54 rm -rf $RPM_BUILD_ROOT
57 $RPM_BUILD_ROOT/{initrd,selinux,sys} \
58 $RPM_BUILD_ROOT/etc/{pki,X11/xinit/xinitrc.d,certs,default,logrotate.d,security,sysconfig/wmstyle,tmpwatch,xdg/autostart,init,NetworkManager/dispatcher.d} \
59 $RPM_BUILD_ROOT/home/{users,services} \
60 $RPM_BUILD_ROOT/lib/{firmware,security,udev/rules.d} \
61 $RPM_BUILD_ROOT/usr/include/{security,X11} \
62 $RPM_BUILD_ROOT/usr/lib/{cgi-bin,browser-plugins,mozilla/extensions,pkgconfig,initrd,ConsoleKit/run-session.d} \
63 $RPM_BUILD_ROOT/usr/share/{augeas/lenses,backgrounds,color/icc,gnome/{help,wm-properties},man/man{n,l},man/pl/mann,pkgconfig,sound{,font}s,themes/Default,vala/vapi,wallpapers,xsessions} \
64 $RPM_BUILD_ROOT/usr/src/examples \
65 $RPM_BUILD_ROOT/var/lock/subsys \
66 $RPM_BUILD_ROOT/var/log/archive \
67 $RPM_BUILD_ROOT{%{_aclocaldir},%{_desktopdir}/docklets,%{_iconsdir},%{_pixmapsdir}} \
68 $RPM_BUILD_ROOT%{_fontsdir}/{{100,75}dpi,OTF,Speedo,Type1/{afm,pfm},TTF,cyrillic,local,misc} \
69 $RPM_BUILD_ROOT{%{_idldir},%{_privsepdir}}
71 %if "%{_lib}" == "lib64"
73 $RPM_BUILD_ROOT/lib64/security \
74 $RPM_BUILD_ROOT/usr/lib64/pkgconfig \
75 $RPM_BUILD_ROOT/usr/lib64/browser-plugins \
76 $RPM_BUILD_ROOT/usr/lib64/mozilla/extensions \
77 $RPM_BUILD_ROOT/usr/lib64/initrd
80 %if "%{pld_release}" == "ac"
81 rmdir $RPM_BUILD_ROOT/usr/include/X11
83 install -d $RPM_BUILD_ROOT/usr/X11R6/share
84 for manp in man{1,2,3,4,5,6,7,8} ; do
85 install -d $RPM_BUILD_ROOT/usr/X11R6/man/$manp
86 for mloc in it ko pl; do
87 install -d $RPM_BUILD_ROOT/usr/X11R6/man/$mloc/$manp
90 install -d $RPM_BUILD_ROOT/usr/share/wm-properties
94 $RPM_BUILD_ROOT/usr/lib/debug/%{_lib} \
95 $RPM_BUILD_ROOT/usr/lib/debug%{_libdir} \
96 $RPM_BUILD_ROOT/usr/lib/debug/{bin,sbin} \
97 $RPM_BUILD_ROOT/usr/lib/debug/usr/{bin,sbin} \
98 $RPM_BUILD_ROOT/usr/lib/debug/lib/security \
99 $RPM_BUILD_ROOT/usr/src/debug
101 %if "%{_lib}" == "lib64"
103 $RPM_BUILD_ROOT/usr/lib/debug/lib64/security
106 # create this for %clean
107 tar -cf checkfiles.tar -C $RPM_BUILD_ROOT .
110 mkdir -p $RPM_BUILD_ROOT
111 tar -xf checkfiles.tar -C $RPM_BUILD_ROOT
114 check_filesystem_dirs() {
115 RPMFILE=%{_rpmdir}/%{name}-%{version}-%{release}.%{_target_cpu}.rpm
116 RPMFILE2=%{?with_debuginfo:%{_rpmdir}/%{name}-debuginfo-%{version}-%{release}.%{_target_cpu}.rpm}
118 # note: we must exclude from check all existing dirs belonging to FHS
119 find | sed -e 's|^\.||g' -e 's|^$||g' | LC_ALL=C sort | grep -v $TMPFILE | grep -E -v '^/(etc|etc/X11|home|lib|lib64|usr|usr/include|usr/lib|usr/lib64|usr/share|usr/share/man|usr/share/man/pl|usr/src|var|var/lock|var/log)$' > $TMPFILE
121 # find finds also '.', so use option -B for diff
122 rpm -qpl $RPMFILE $RPMFILE2 | grep -v '^/$' | LC_ALL=C sort | diff -uB - $TMPFILE || :
127 check_filesystem_dirs
129 %if "%{pld_release}" != "ac"
131 -- this needs to be a dir
132 if posix.stat("/usr/include/X11", "type") == "link" then
133 -- feel free to write in pure lua, but success on first install is not important.
134 os.execute("umask 022; mv -f /usr/include/X11{,.rpmsave}; mkdir -m755 -p /usr/include/X11 && mv -f /usr/include/X11.rpmsave/* /usr/include/X11")
139 %defattr(644,root,root,755)
141 %dir /etc/X11/xinit/xinitrc.d
142 %attr(751,root,root) %dir /etc/certs
145 %dir /etc/logrotate.d
146 %attr(751,root,root) %dir /etc/security
148 %dir /etc/sysconfig/wmstyle
152 %dir /etc/xdg/autostart
153 %dir /etc/NetworkManager
154 %dir /etc/NetworkManager/dispatcher.d
161 %dir /lib/udev/rules.d
164 %if "%{pld_release}" != "ac"
165 %dir /usr/include/X11
167 %dir /usr/include/security
168 %dir /usr/lib/ConsoleKit
169 %dir /usr/lib/ConsoleKit/run-session.d
170 %dir /usr/lib/browser-plugins
171 %dir /usr/lib/mozilla
172 %dir /usr/lib/mozilla/extensions
173 %dir /usr/lib/cgi-bin
175 %dir /usr/lib/pkgconfig
176 %dir /usr/share/augeas
177 %dir /usr/share/augeas/lenses
178 %dir /usr/share/backgrounds
179 %dir /usr/share/color
180 %dir /usr/share/color/icc
181 %dir /usr/share/gnome
182 %dir /usr/share/gnome/help
183 %dir /usr/share/gnome/wm-properties
184 %dir /usr/share/man/man[nl]
185 %lang(pl) %dir /usr/share/man/pl/mann
186 %dir /usr/share/pkgconfig
187 %dir /usr/share/soundfonts
188 %dir /usr/share/sounds
189 %dir /usr/share/themes
190 %dir /usr/share/themes/Default
192 %dir /usr/share/vala/vapi
193 %dir /usr/share/wallpapers
194 %dir /usr/share/xsessions
195 %dir /usr/src/examples
196 %attr(700,root,root) %dir /var/lock/subsys
197 %attr(750,root,logs) %dir /var/log/archive
200 %dir %{_desktopdir}/docklets
206 %if "%{_lib}" == "lib64"
208 %dir /usr/lib64/browser-plugins
209 %dir /usr/lib64/mozilla
210 %dir /usr/lib64/mozilla/extensions
211 %dir /usr/lib64/initrd
212 %dir /usr/lib64/pkgconfig
215 %if "%{pld_release}" == "ac"
219 %lang(it) /usr/X11R6/man/it
220 %lang(ko) /usr/X11R6/man/ko
221 %lang(pl) /usr/X11R6/man/pl
222 %dir /usr/X11R6/share
224 %dir /usr/share/wm-properties