]> git.pld-linux.org Git - packages/dss.git/blame - dss.spec
add gcc43.patch
[packages/dss.git] / dss.spec
CommitLineData
1d56511d
ER
1# TODO
2# - merge dstreamserv.spec
5557df52 3
2d53a2fb
ER
4Summary: Darwin Streaming Server
5Name: dss
6Version: 6.0.3
cdc01e0b 7Release: 0.15
2d53a2fb 8License: Apple Public Source License
44d6eb04 9Group: Networking/Daemons
2d53a2fb
ER
10Source0: http://dss.macosforge.org/downloads/DarwinStreamingSrvr%{version}-Source.tar
11# Source0-md5: ca676691db8417d05121699c0ca3d549
4304f4a7 12Source1: %{name}.init
4beb8734
ER
13Source2: %{name}-admin.init
14Source3: README.utils
720b962c
ER
15Patch0: %{name}.patch
16Patch1: %{name}-x86_64.patch
c08547c4
ER
17Patch2: optflags.patch
18Patch3: compile.patch
b8e5ff6c 19Patch4: gcc43.patch
2d53a2fb 20URL: http://dss.macosforge.org/
b78d428a 21BuildRequires: libstdc++-devel
5557df52 22BuildRequires: rpm-perlprov >= 4.1-13
1a100897
ER
23BuildRequires: rpmbuild(macros) >= 1.228
24Requires(post,preun): /sbin/chkconfig
1d56511d
ER
25Requires(postun): /usr/sbin/groupdel
26Requires(postun): /usr/sbin/userdel
27Requires(pre): /bin/id
28Requires(pre): /usr/bin/getgid
29Requires(pre): /usr/sbin/groupadd
30Requires(pre): /usr/sbin/useradd
1a100897 31Requires: rc-scripts
1d56511d
ER
32Provides: group(qtss)
33Provides: user(qtss)
44d6eb04
ER
34Obsoletes: DSS
35Obsoletes: dstreamserv
36Obsoletes: dstreamsrv
2d53a2fb
ER
37BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
38
b8e5ff6c
ER
39#define specflags -Werror -Wno-write-strings
40
2d53a2fb
ER
41%description
42Darwin Streaming Server lets you stream digital video on the Internet
43using industry-standard Internet protocols RTP and RTSP.
44
45Using Darwin Streaming Server you can serve stored files (video on
46demand) or reflect live broadcasts to thousands of QuickTime 4 or
47later users. With its combination of industry-standard streaming
48protocols and cutting-edge compression technologies, QuickTime
49delivers perfectly synchronized audio and video streams ideal for
50Internet video and live events.
51
44d6eb04
ER
52%description -l pl.UTF-8
53Serwer strumieni pozwala wysyłać strumienie danych QuickTime do
54klientów w Internecie przy użyciu protokołów RTP i RTSP.
55
2d53a2fb
ER
56%package Proxy
57Summary: Apple's Darwin Streaming Proxy
58Group: Daemons
b0573af5 59Requires: %{name} = %{version}-%{release}
2d53a2fb
ER
60
61%description Proxy
62The Darwin Streaming Proxy is an application specific proxy which
63would normally be run in a border zone or perimeter network. It is
64used to give client machines within a protected network access to
65streaming servers outside that network, in the case when the firewall
66blocks RTSP connections or RTP/UDP data flow. The firewall perimeter
67network is usually configured to allow:
68
69- RTSP connections from within the network, as long as the destination
70 is the proxy
71
72- RTSP connections to outside the network, as long as the source is
73 the proxy
74
75- RTP datagrams to and from the proxy to the inner network
76
77- RTP datagrams to and from the proxy to the outside
78
4304f4a7 79%package utils
2d53a2fb 80Summary: Apple's Darwin Streaming Server Movie inspection utilities
44d6eb04 81Group: Applications
b0573af5 82Requires: %{name} = %{version}-%{release}
2d53a2fb 83
4304f4a7
ER
84%description utils
85Apple's Darwin Streaming Server Movie inspection utilities.
2d53a2fb 86
1d56511d
ER
87%package samples
88Summary: Darwin Streaming Server - samples
89Summary(pl.UTF-8): Przykłady do Darwin Streaming Servera
90Group: Networking/Daemons
b0573af5 91Requires: %{name} = %{version}-%{release}
44d6eb04 92Obsoletes: dstreamserv-samples
1d56511d
ER
93
94%description samples
95Sample files for Streaming Server.
2d53a2fb 96
1d56511d
ER
97%description samples -l pl.UTF-8
98Przykładowe pliki do Darwin Streaming Servera.
2d53a2fb
ER
99
100%prep
101%setup -q -n DarwinStreamingSrvr%{version}-Source
720b962c
ER
102%patch0 -p1
103%patch1 -p1
c08547c4
ER
104%patch2 -p1
105%patch3 -p1
b8e5ff6c 106#%patch4 -p1
4beb8734 107cp -p %{SOURCE3} .
2d53a2fb
ER
108
109# patch streamingadminserver.pl
7922b313 110%{__sed} -i.bak -e '
4304f4a7 111 s|/''usr/local/movies|/var/lib/%{name}/movies|g
7922b313
ER
112 s|/''usr/local/sbin/StreamingServerModules|%{_libdir}/%{name}/|g
113 s|/''usr/local/|%{_prefix}/|g
1a100897 114 s|/''etc/streaming|%{_sysconfdir}/%{name}|g
44d6eb04 115 s|/var/streaming/AdminHtml|%{_datadir}/%{name}/AdminHtml|g
4304f4a7
ER
116 s|/var/streaming/logs|/var/log/%{name}|g
117 s|/var/streaming/|/var/lib/%{name}/|g
97f6a05e
ER
118 s|<PREF NAME="run_user_name"></PREF>|<PREF NAME="run_user_name">qtss</PREF>|
119 s|<PREF NAME="run_group_name"></PREF>|<PREF NAME="run_group_name">qtss</PREF>|
7922b313
ER
120' DSS_MakeRoot streamingserver.xml-POSIX \
121 WebAdmin/src/streamingadminserver.pl \
122 WebAdmin/WebAdminHtml/adminprotocol-lib.pl
2d53a2fb
ER
123
124# patch manpages
7922b313
ER
125%{__sed} -i -e '
126 s|/Library/QuickTimeStreaming/Config/|%{_sysconfdir}/%{name}/|g
127 s|/Library/QuickTimeStreaming/Modules|%{_libdir}/%{name}|g
4304f4a7
ER
128 s|/Library/QuickTimeStreaming/Movies|/var/lib/%{name}/movies|g
129 s|/Library/QuickTimeStreaming/Playlists|/var/lib/%{name}/playlists|g
130 s|/Library/QuickTimeStreaming/Logs|/var/log/%{name}|g
7922b313
ER
131 s|/Library/QuickTimeStreaming/Docs|%{_docdir}/%{name}-%{version}|g
132 s|QuickTimeStreamingServer|DarwinStreamingServer|g
133' Documentation/man/qtss/*
134
135cat > defaultPaths.h << 'EOF'
2d53a2fb 136#define DEFAULTPATHS_DIRECTORY_SEPARATOR "/"
4304f4a7 137#define DEFAULTPATHS_ROOT_DIR "/var/lib/%{name}/"
7922b313 138#define DEFAULTPATHS_ETC_DIR "%{_sysconfdir}/%{name}/"
2d53a2fb 139#define DEFAULTPATHS_ETC_DIR_OLD "%{_sysconfdir}/"
7922b313 140#define DEFAULTPATHS_SSM_DIR "%{_libdir}/%{name}/"
4304f4a7
ER
141#define DEFAULTPATHS_LOG_DIR "/var/log/%{name}/"
142#define DEFAULTPATHS_PID_DIR "/var/run/"
143#define DEFAULTPATHS_MOVIES_DIR "/var/lib/%{name}/movies/"
2d53a2fb
ER
144EOF
145
b8e5ff6c
ER
146#%undos -f cpp
147#find -name '*.cpp' | xargs sed -i -re 's/char\s*\*\s*(\w+)\s*= "/const char* \1 = "/g'
148
2d53a2fb 149%build
2d53a2fb
ER
150export ARCH="%{_target_cpu}"
151export CC="%{__cc}"
491bb58d 152export CFLAGS="%{rpmcflags}"
2d53a2fb 153export CXX="%{__cxx}"
491bb58d
ER
154export CXXFLAGS="%{rpmcxxflags}"
155export LDFLAGS="%{rpmldflags}"
2d53a2fb
ER
156
157jobs=$(echo %{_smp_mflags} | cut -dj -f2)
158./Buildit ${jobs:+--jobs=$jobs}
159
160%install
161rm -rf $RPM_BUILD_ROOT
4304f4a7 162install -d $RPM_BUILD_ROOT{/etc/rc.d/init.d,/var/lib/%{name},%{_mandir}/man{1,8}}
2d53a2fb
ER
163./DSS_MakeRoot \
164 $RPM_BUILD_ROOT
165
1a100897 166install -p %{SOURCE1} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}
4beb8734 167install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-admin
1a100897 168
50605db0
ER
169# avoid extension
170mv $RPM_BUILD_ROOT%{_sbindir}/streamingadminserver{.pl,}
171
4304f4a7
ER
172# utils
173install -p QTFileTools/QTBroadcaster.tproj/QTBroadcaster $RPM_BUILD_ROOT%{_bindir}
174install -p QTFileTools/QTFileInfo.tproj/QTFileInfo $RPM_BUILD_ROOT%{_bindir}
175install -p QTFileTools/QTFileTest.tproj/QTFileTest $RPM_BUILD_ROOT%{_bindir}
176install -p QTFileTools/QTRTPFileTest.tproj/QTRTPFileTest $RPM_BUILD_ROOT%{_bindir}
177install -p QTFileTools/QTRTPGen.tproj/QTRTPGen $RPM_BUILD_ROOT%{_bindir}
178install -p QTFileTools/QTSampleLister.tproj/QTSampleLister $RPM_BUILD_ROOT%{_bindir}
179install -p QTFileTools/QTSDPGen.tproj/QTSDPGen $RPM_BUILD_ROOT%{_bindir}
180install -p QTFileTools/QTTrackInfo.tproj/QTTrackInfo $RPM_BUILD_ROOT%{_bindir}
181
182# modules
183install -p APIModules/QTSSRawFileModule.bproj/QTSSRawFileModule $RPM_BUILD_ROOT%{_libdir}/%{name}
184
185# config
186cp -a qtaccess $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
187
7922b313
ER
188# Create our default admin user and remove Apple's
189# Default login is root/pld -- please change it!
190qtpasswd="\
191$RPM_BUILD_ROOT%{_bindir}/qtpasswd \
192-f $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/qtusers
193-g $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/qtgroups"
194$qtpasswd root -p pld -A admin
195$qtpasswd -F -d 'aGFja21l'
196
197mv $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/relayconfig.xml{-Sample,}
198rm $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/streamingserver.xml-sample
199
4304f4a7
ER
200# streamingadminserver
201cp -a WebAdmin/streamingadminserver.pem $RPM_BUILD_ROOT%{_sysconfdir}/%{name}
202
203# doc
204cp -a Documentation/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
205cp -a Documentation/man/qtss/*.1 $RPM_BUILD_ROOT%{_mandir}/man1
206cp -a Documentation/man/qtss/createuserstreamingdir.8 $RPM_BUILD_ROOT%{_mandir}/man8
207cp -a Documentation/man/qtss/QuickTimeStreamingServer.8 $RPM_BUILD_ROOT%{_mandir}/man8/DarwinStreamingServer.8
50605db0 208cp -a Documentation/man/qtss/streamingadminserver.pl.8 $RPM_BUILD_ROOT%{_mandir}/man8/streamingadminserver.8
7922b313
ER
209rm $RPM_BUILD_ROOT/var/lib/%{name}/3rdPartyAcknowledgements.rtf
210rm $RPM_BUILD_ROOT/var/lib/%{name}/readme.txt
211
4304f4a7
ER
212# provide ghost logs...
213touch $RPM_BUILD_ROOT/var/log/%{name}/Error.log
214touch $RPM_BUILD_ROOT/var/log/%{name}/StreamingServer.log
215touch $RPM_BUILD_ROOT/var/log/%{name}/mp3_access.log
216touch $RPM_BUILD_ROOT/var/log/%{name}/server_status
70a0fe0c 217touch $RPM_BUILD_ROOT/var/log/%{name}/streamingadminserver.log
4304f4a7 218
2d53a2fb
ER
219%clean
220rm -rf $RPM_BUILD_ROOT
221
1d56511d
ER
222%pre
223%groupadd -f -g 148 qtss
224%useradd -g qtss -d /tmp -u 148 -s /bin/false qtss
225
1a100897 226%post
cdc01e0b
ER
227for a in StreamingServer.log mp3_access.log server_status streamingadminserver.log; do
228 log=/var/log/%{name}/$a
70a0fe0c 229 if [ ! -f $log ]; then
cdc01e0b 230 install -o root -g qtss -m 0660 /dev/null $log
70a0fe0c 231 fi
cdc01e0b 232done
1a100897 233/sbin/chkconfig --add %{name}
4beb8734 234/sbin/chkconfig --add %{name}-admin
1a100897 235%service %{name} restart
4beb8734 236%service %{name}-admin restart
1a100897 237
4304f4a7
ER
238if [ "$1" = "1" ]; then
239 %banner %{name} -e <<-EOF
240 Default admin username/password is root/pld. Set a password for it or, better
241 delete it and create new admin username and password (using qtpasswd)
242
5557df52
ER
243 Access admin interface at:
244 http://localhost:1220/
4304f4a7
ER
245 EOF
246fi
247
1a100897
ER
248%preun
249if [ "$1" = "0" ]; then
250 %service -q %{name} stop
4beb8734 251 %service -q %{name}-admin stop
1a100897 252 /sbin/chkconfig --del %{name}
4beb8734 253 /sbin/chkconfig --del %{name}-admin
1a100897
ER
254fi
255
1d56511d
ER
256%postun
257if [ "$1" = "0" ]; then
258 %userremove qtss
259 %groupremove qtss
260fi
261
2d53a2fb
ER
262%files
263%defattr(644,root,root,755)
264%doc APPLE_LICENSE ReleaseNotes.txt
7922b313
ER
265%doc Documentation/3rdPartyAcknowledgements.rtf
266%doc Documentation/AboutQTFileTools.html
267%doc Documentation/AboutTheSource.html
268%doc Documentation/admin-protocol-README.txt
269%doc Documentation/CachingProxyProtocol-README.txt
270%doc Documentation/DevNotes.html
271%doc Documentation/draft-serenyi-avt-rtp-meta-00.txt
272%doc Documentation/DSS_QT_Logo_License.pdf
273%doc Documentation/License.rtf
274%doc Documentation/QTSSAPIDocs.pdf
275%doc Documentation/ReadMe.rtf
276%doc Documentation/readme.txt
277%doc Documentation/ReliableRTP_WhitePaper.rtf
278%doc Documentation/RTSP_Over_HTTP.pdf
279
280%dir %{_sysconfdir}/%{name}
281%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/qtgroups
282%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/qtusers
283%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/relayconfig.xml
284%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/streamingloadtool.conf
285%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/streamingserver.xml
4304f4a7
ER
286%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/qtaccess
287%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}/streamingadminserver.pem
7922b313 288
1a100897 289%attr(754,root,root) /etc/rc.d/init.d/dss
4beb8734 290%attr(754,root,root) /etc/rc.d/init.d/dss-admin
7922b313
ER
291%attr(755,root,root) %{_bindir}/MP3Broadcaster
292%attr(755,root,root) %{_bindir}/PlaylistBroadcaster
293%attr(755,root,root) %{_bindir}/StreamingLoadTool
294%attr(755,root,root) %{_bindir}/createuserstreamingdir
295%attr(755,root,root) %{_bindir}/qtpasswd
296
297%attr(755,root,root) %{_sbindir}/DarwinStreamingServer
50605db0 298%attr(755,root,root) %{_sbindir}/streamingadminserver
7922b313 299
4304f4a7
ER
300%{_mandir}/man1/*
301%{_mandir}/man8/*
302
7922b313
ER
303%dir %{_libdir}/%{name}
304%attr(755,root,root) %{_libdir}/%{name}/QTSSHomeDirectoryModule
305%attr(755,root,root) %{_libdir}/%{name}/QTSSRefMovieModule
306
4304f4a7
ER
307%attr(755,root,root) %{_libdir}/dss/QTSSRawFileModule
308
7922b313 309%dir /var/lib/%{name}
1d56511d 310%dir /var/lib/%{name}/movies
7922b313 311
4304f4a7
ER
312%dir /var/log/%{name}
313%attr(644,qtss,qtss) %verify(not md5 mtime size) %ghost /var/log/%{name}/Error.log
314%attr(644,qtss,qtss) %verify(not md5 mtime size) %ghost /var/log/%{name}/StreamingServer.log
315%attr(644,qtss,qtss) %verify(not md5 mtime size) %ghost /var/log/%{name}/mp3_access.log
316%attr(644,qtss,qtss) %verify(not md5 mtime size) %ghost /var/log/%{name}/server_status
70a0fe0c 317%attr(644,qtss,qtss) %verify(not md5 mtime size) %ghost /var/log/%{name}/streamingadminserver.log
4304f4a7 318
44d6eb04
ER
319# admin server (subpackage?)
320%dir %{_datadir}/%{name}
321%dir %{_datadir}/%{name}/AdminHtml
322%{_datadir}/%{name}/AdminHtml/html_en
323%{_datadir}/%{name}/AdminHtml/images
324%{_datadir}/%{name}/AdminHtml/includes
325%{_datadir}/%{name}/AdminHtml/*.html
326%{_datadir}/%{name}/AdminHtml/*.pl
327%attr(755,root,root) %{_datadir}/%{name}/AdminHtml/*.cgi
1d56511d 328
4304f4a7
ER
329%files utils
330%defattr(644,root,root,755)
331%doc README.utils
332%attr(755,root,root) %{_bindir}/QTBroadcaster
333%attr(755,root,root) %{_bindir}/QTFileInfo
334%attr(755,root,root) %{_bindir}/QTFileTest
335%attr(755,root,root) %{_bindir}/QTRTPFileTest
336%attr(755,root,root) %{_bindir}/QTRTPGen
337%attr(755,root,root) %{_bindir}/QTSDPGen
338%attr(755,root,root) %{_bindir}/QTSampleLister
339%attr(755,root,root) %{_bindir}/QTTrackInfo
340
1d56511d
ER
341%files samples
342%defattr(644,root,root,755)
343/var/lib/%{name}/movies/*
This page took 0.165963 seconds and 4 git commands to generate.