diff options
Diffstat (limited to 'packages')
-rw-r--r-- | packages/rpm/Makefile.in | 38 | ||||
-rw-r--r-- | packages/rpm/configure.in | 44 | ||||
-rw-r--r-- | packages/rpm/ndpi.spec.in | 87 |
3 files changed, 169 insertions, 0 deletions
diff --git a/packages/rpm/Makefile.in b/packages/rpm/Makefile.in new file mode 100644 index 000000000..1621b66e9 --- /dev/null +++ b/packages/rpm/Makefile.in @@ -0,0 +1,38 @@ +# +# RPM Build Process +# +APPL=ndpi +PLATFORM=@PLATFORM@ +GIT_REVISION=@GIT_REVISION@ +PACKAGE_VERSION=@PACKAGE_VERSION@ +PACKAGE=$(APPL)-$(PACKAGE_VERSION)-$(GIT_REVISION).$(PLATFORM).rpm +DEV_PACKAGE=$(APPL)-dev-$(PACKAGE_VERSION)-$(GIT_REVISION).$(PLATFORM).rpm +PACKAGE_PATH=$(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(PACKAGE) + +package: build-rpm + +cleanup-src: + cd ../..; ./autogen.sh; ./configure; make clean + +cleanup-rpm: + rm -rf $(HOME)/rpmbuild/BUILD/ndpi* $(HOME)/rpmbuild/SOURCES/ndpi* + +build-rpm: cleanup-src cleanup-rpm + -rm -rf ndpi-@PACKAGE_VERSION@ + mkdir -p ndpi-@PACKAGE_VERSION@/packages + cp ndpi.spec.in ndpi-@PACKAGE_VERSION@/packages + cp ../../Makefile.* ../../libtool ../../configure* ../../config.* ../../install-sh ../../autogen.sh ndpi-@PACKAGE_VERSION@ + cp -rf ../../src ndpi-@PACKAGE_VERSION@ + cp ../../CHANGELOG.md ../../COPYING ndpi-@PACKAGE_VERSION@ + \rm -f ndpi-@PACKAGE_VERSION@/config.status + mkdir -p $(HOME)/rpmbuild/SOURCES + tar cvfz $(HOME)/rpmbuild/SOURCES/ndpi-@PACKAGE_VERSION@.tgz ndpi-@PACKAGE_VERSION@ + @rm -f $(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(PACKAGE) + @rpmbuild -bb ./$(APPL).spec --define "buildnumber $(GIT_REVISION)" + @if [[ $EUID -ne 0 ]]; then ./rpm-sign.exp $(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(PACKAGE); fi + @if [[ $EUID -ne 0 ]]; then ./rpm-sign.exp $(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(DEV_PACKAGE); fi + @echo "" + @echo "Package contents:" + @rpm -qpl $(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(PACKAGE) + @echo "The package is now available in $(HOME)/rpmbuild/RPMS/$(PLATFORM)/$(PACKAGE)" + diff --git a/packages/rpm/configure.in b/packages/rpm/configure.in new file mode 100644 index 000000000..84454923a --- /dev/null +++ b/packages/rpm/configure.in @@ -0,0 +1,44 @@ +AC_INIT([Makefile.in], 1.0) + +DATE=`date -R` +KERNEL=`uname -r` +PLATFORM=`uname -p` +MACHINE=`uname -m` +SHORT_MACHINE=`uname -m | cut -b1-3` + +EXTN="" +if test $MACHINE = "x86_64"; then + EXTN="amd64" +else + if test $SHORT_MACHINE = "aar"; then + EXTN="arm64" + else + if test $SHORT_MACHINE = "arm"; then + EXTN="armhf" + else + if test $SHORT_MACHINE = "mip"; then + EXTN="mips" + else + EXTN="i386" + fi + fi + fi +fi + +PACKAGE_VERSION=`cat ../../configure.ac|grep C_INIT|cut -c 21-|rev|cut -c 3-|rev` +GIT_RELEASE=`git rev-parse HEAD` +GIT_REVISION=`git rev-list --all |wc -l | tr -d '[[:space:]]'` + +AC_CONFIG_FILES([Makefile ndpi.spec]) + +AC_SUBST(PACKAGE_VERSION) +AC_SUBST(PLATFORM) +AC_SUBST(MACHINE) +AC_SUBST(EXTN) +AC_SUBST(DATE) +AC_SUBST(KERNEL) +AC_SUBST(GIT_RELEASE) +AC_SUBST(GIT_REVISION) + +AC_OUTPUT + diff --git a/packages/rpm/ndpi.spec.in b/packages/rpm/ndpi.spec.in new file mode 100644 index 000000000..5d8f21a01 --- /dev/null +++ b/packages/rpm/ndpi.spec.in @@ -0,0 +1,87 @@ +Summary: L7 DPI library +Name: ndpi +Version: @PACKAGE_VERSION@ +Release: %{buildnumber} +License: LGPL +Group: Networking/Utilities +Conflicts: nprobe-dev +URL: http://www.ntop.org/products/deep-packet-inspection/ndpi/ +Source: ndpi-%{version}.tgz +Packager: Luca Deri <deri@ntop.org> +BuildRoot: %{_tmppath}/%{name}-%{version}-root +%{?el7:Requires: glibc >= 2.3.4 numactl coreutils } +%{?el6:Requires: glibc >= 2.3.4 numactl coreutils } +AutoReqProv: no + +%description +nDPI Open and Extensible LGPLv3 Deep Packet Inspection Library. + +%package dev +Summary: Header files and development libraries for %{name} +Group: Development/Libraries +Requires: %{name} = %{version}-%{release} + +%description dev +This package contains the header files and development libraries +for %{name}. If you like to develop programs using %{name}, +you will need to install %{name}-dev. + +%prep + +%setup -q + +# Execution order: +# install: pre -> (copy) -> post +# upgrade: pre -> (copy) -> post -> preun (old) -> (delete old) -> postun (old) +# un-install: preun -> (delete) -> postun + +%pre + +%post + +%build +PATH=/usr/bin:/bin:/usr/sbin:/sbin + +%define includedir /usr/local/include/ndpi +%define libdir /usr/local/lib +%define bindir /usr/local/bin + +%install +PATH=/usr/bin:/bin:/usr/sbin:/sbin +if [ -d $RPM_BUILD_ROOT ]; then + \rm -rf $RPM_BUILD_ROOT +fi +mkdir -p $RPM_BUILD_ROOT%{includedir} +mkdir -p $RPM_BUILD_ROOT%{libdir} +mkdir -p $RPM_BUILD_ROOT%{bindir} +cd $HOME/nDPI; make DESTDIR=$RPM_BUILD_ROOT install; +rm $RPM_BUILD_ROOT%{libdir}/libndpi.so +ln -sr $RPM_BUILD_ROOT%{libdir}/libndpi.so.@PACKAGE_VERSION@ $RPM_BUILD_ROOT%{libdir}/libndpi.so +mkdir -p $RPM_BUILD_ROOT/etc/ld.so.conf.d +cp $HOME/nDPI/packages/etc/ld.so.conf.d/ndpi.conf $RPM_BUILD_ROOT/etc/ld.so.conf.d +strip $RPM_BUILD_ROOT%{bindir}/* +rm -fr %{buildroot}%{includedir}/ndpi_win32.h + +%clean +rm -fr $RPM_BUILD_ROOT + +%files +%defattr(-, root, root) + +/usr/local/lib/libndpi.so +/usr/local/lib/libndpi.so.@PACKAGE_VERSION@ +/usr/local/bin/ndpiReader +/etc/ld.so.conf.d/ndpi.conf +/usr/local/libdata/pkgconfig/libndpi.pc + +%preun + +%files dev +%defattr(-,root,root,-) + +%{includedir} +%{libdir}/libndpi.a + +%changelog +* Mon Nov 19 2018 Alfredo Cardigliano <cardigliano@ntop.org> 2.5 +- Initial package version |