summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--LICENSE3
-rw-r--r--Makefile.am4
-rw-r--r--m4/.gitignore5
-rw-r--r--pinos.spec148
-rw-r--r--src/Makefile.am18
5 files changed, 166 insertions, 12 deletions
diff --git a/LICENSE b/LICENSE
new file mode 100644
index 00000000..113c2c1f
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,3 @@
+All Pinos source files are licensed under the GNU Lesser General Public
+License. (see file LGPL for details)
+
diff --git a/Makefile.am b/Makefile.am
index 4652b77e..0992df54 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -26,9 +26,7 @@ EXTRA_DIST = \
SUBDIRS = src
-DIST_SUBDIRS = pkgconfig \
- doc \
- src
+DIST_SUBDIRS = src
MAINTAINERCLEANFILES =
noinst_DATA =
diff --git a/m4/.gitignore b/m4/.gitignore
new file mode 100644
index 00000000..38066ddf
--- /dev/null
+++ b/m4/.gitignore
@@ -0,0 +1,5 @@
+libtool.m4
+ltoptions.m4
+ltsugar.m4
+ltversion.m4
+lt~obsolete.m4
diff --git a/pinos.spec b/pinos.spec
new file mode 100644
index 00000000..945f5c1c
--- /dev/null
+++ b/pinos.spec
@@ -0,0 +1,148 @@
+%global majorminor 0.1
+
+#global snap 20141103
+#global gitrel 327
+#global gitcommit aec811798cd883a454b9b5cd82c77831906bbd2d
+#global shortcommit %(c=%{gitcommit}; echo ${c:0:5})
+
+# https://bugzilla.redhat.com/983606
+%global _hardened_build 1
+
+# where/how to apply multilib hacks
+%global multilib_archs x86_64 %{ix86} ppc64 ppc s390x s390 sparc64 sparcv9 ppc64le
+
+Name: pinos
+Summary: Media Sharing Server
+Version: 0.1
+Release: 1%{?snap:.%{snap}git%{shortcommit}}%{?dist}
+License: LGPLv2+
+URL: http://www.freedesktop.org/wiki/Software/Pinos
+%if 0%{?gitrel}
+# git clone git://anongit.freedesktop.org/gstreamer/pinos
+# cd pinos; git reset --hard %{gitcommit}; ./autogen.sh; make; make distcheck
+Source0: pinos-%{version}-%{gitrel}-g%{shortcommit}.tar.xz
+%else
+Source0: http://freedesktop.org/software/pinos/releases/pinos-%{version}.tar.xz
+%endif
+
+## upstream patches
+
+## upstreamable patches
+
+BuildRequires: automake libtool
+BuildRequires: m4
+BuildRequires: libtool-ltdl-devel
+BuildRequires: intltool
+BuildRequires: pkgconfig
+BuildRequires: xmltoman
+BuildRequires: tcp_wrappers-devel
+BuildRequires: gstreamer1-devel >= 1.4.5
+BuildRequires: systemd-devel >= 184
+
+Requires(pre): shadow-utils
+Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+Requires: systemd >= 184
+Requires: rtkit
+
+%description
+Pinos is a multimedia server for Linux and other Unix like operating
+systems.
+
+%package libs
+Summary: Libraries for Pinos clients
+License: LGPLv2+
+
+%description libs
+This package contains the runtime libraries for any application that wishes
+to interface with a Pinos media server.
+
+%package libs-devel
+Summary: Headers and libraries for Pinos client development
+License: LGPLv2+
+Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+%description libs-devel
+Headers and libraries for developing applications that can communicate with
+a Pinos media server.
+
+%package utils
+Summary: Pinos media server utilities
+License: LGPLv2+
+Requires: %{name}-libs%{?_isa} = %{version}-%{release}
+
+%description utils
+This package contains command line utilities for the Pinos media server.
+
+%prep
+%setup -q -T -b0 -n %{name}-%{version}%{?gitrel:-%{gitrel}-g%{shortcommit}}
+
+%if 0%{?gitrel:1}
+# fixup PACKAGE_VERSION that leaks into pkgconfig files and friends
+sed -i.PACKAGE_VERSION -e "s|^PACKAGE_VERSION=.*|PACKAGE_VERSION=\'%{version}\'|" configure
+%else
+## kill rpaths
+%if "%{_libdir}" != "/usr/lib"
+sed -i -e 's|"/lib /usr/lib|"/%{_lib} %{_libdir}|' configure
+%endif
+%endif
+
+
+%build
+%configure \
+ --disable-silent-rules \
+ --disable-static \
+ --disable-rpath \
+ --with-system-user=pinos \
+ --with-system-group=pinos \
+ --with-access-group=pinos-access \
+ --disable-systemd-daemon \
+ --enable-tests
+
+make %{?_smp_mflags} V=1
+
+%install
+make install DESTDIR=$RPM_BUILD_ROOT
+
+## unpackaged files
+# extraneous libtool crud
+rm -fv $RPM_BUILD_ROOT%{_libdir}/*.la
+
+%check
+# don't fail build due failing tests on big endian arches (rhbz#1067470)
+make check \
+%ifarch ppc %{power64} s390 s390x
+ || :
+%else
+ %{nil}
+%endif
+
+
+%pre
+
+%post -p /sbin/ldconfig
+%postun -p /sbin/ldconfig
+
+%files
+%doc README LICENSE GPL LGPL
+## already owned by -libs, see also https://bugzilla.redhat.com/show_bug.cgi?id=909690
+#dir %{_sysconfdir}/pinos/
+%{_sysconfdir}/dbus-1/system.d/pinos-system.conf
+%{_bindir}/pinos
+%{_libdir}/libpinos-%{majorminor}.so
+%{_libdir}/libpinoscore-%{majorminor}.so
+%{_libdir}/gstreamer-1.0/libgstpinos.*
+
+%files libs
+%doc README LICENSE GPL LGPL
+#%dir %{_sysconfdir}/pinos/
+#%dir %{_libdir}/pinos/
+
+%files libs-devel
+%{_includedir}/pinos/
+%{_libdir}/pkgconfig/libpinos*.pc
+
+%files utils
+%{_bindir}/pinos-monitor
+
+%changelog
+* Tue Sep 1 2015 Wim Taymans <wtaymans@redhat.com> - 0.1.0-1
+- First version
diff --git a/src/Makefile.am b/src/Makefile.am
index b1d923b7..383f2b02 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -19,9 +19,9 @@
# Extra directories #
###################################
-pinosincludedir=$(includedir)/client
-pinosserverincludedir=$(includedir)/server
-pinoslibexecdir=$(libexecdir)/client
+pinosincludedir=$(includedir)/pinos/client
+pinosserverincludedir=$(includedir)/pinos/server
+pinoslibexecdir=$(libexecdir)/pinos/client
dbuspolicydir=$(sysconfdir)/dbus-1/system.d
###################################
@@ -49,8 +49,9 @@ FOREIGN_CFLAGS = -w
###################################
EXTRA_DIST = \
- src/version.h.in \
- daemon/pinos-system.conf
+ daemon/pinos-system.conf \
+ dbus/org.pinos.xml \
+ client/private.h
dbuspolicy_DATA = \
daemon/pinos-system.conf
@@ -152,8 +153,7 @@ pinos_monitor_LDFLAGS = $(AM_LDFLAGS) $(BINLDFLAGS)
pinosgstsource = gst/gstpinospay.h gst/gstpinospay.c \
gst/gstpinosdepay.h gst/gstpinosdepay.c \
- gst/gsttmpfileallocator.h gst/gsttmpfileallocator.c \
- wire-protocol.h
+ gst/gsttmpfileallocator.h gst/gsttmpfileallocator.c
pinosinclude_HEADERS = \
client/pinos.h \
@@ -200,8 +200,8 @@ libpinoscore_@PINOS_MAJORMINOR@_la_SOURCES = \
server/source.c server/source.h \
server/client-source.c server/client-source.h \
server/source-output.c server/source-output.h \
- modules/gst/gst-manager.c \
- modules/gst/gst-source.c \
+ modules/gst/gst-manager.c modules/gst/gst-manager.h \
+ modules/gst/gst-source.c modules/gst/gst-source.h \
dbus/org-pinos.c dbus/org-pinos.h
libpinoscore_@PINOS_MAJORMINOR@_la_CFLAGS = $(AM_CFLAGS) $(SERVER_CFLAGS)