Browse Source

wireshark-2.4.5-1

git-svn-id: http://trac.vinelinux.org/repos/projects/specs@11575 ec354946-7b23-47d6-9f5a-488ba84defc7
tomop 6 years ago
parent
commit
8bfc8aba1f
1 changed files with 126 additions and 92 deletions
  1. 126 92
      w/wireshark/wireshark-vl.spec

+ 126 - 92
w/wireshark/wireshark-vl.spec

@@ -1,19 +1,26 @@
-%define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")
+%define _unpackaged_files_terminate_build 1
+%define _udevrulesdir /lib/udev/rules.d/
 
 Summary: 	Network traffic analyzer
 Summary(ja):    ネットワークトラフィック解析プログラム
 Name: 		wireshark
-Version:	2.0.5
+Version:	2.4.5
 Release: 	1%{_dist_release}
 License: 	GPLv2
 Group: 		Applications/System
-Source0:	http://www.wireshark.org/download/src/%{name}-%{version}.tar.bz2
+URL: 		http://www.wireshark.org/
+Source0:	http://www.wireshark.org/download/src/%{name}-%{version}.tar.xz
 Source1:	wireshark.pam
 Source2:	wireshark.console
-Source3:	wireshark.desktop
-Patch4:         wireshark-2.0.5-path.patch
-Patch5:         wireshark-1.10.0-lua-vine.patch
-URL: 		http://www.wireshark.org/
+Source4:	90-wireshark-usbmon.rules
+Patch1:		wireshark-0001-enable-Lua-support.patch
+Patch2:		wireshark-0002-Customize-permission-denied-error.patch
+Patch3:		wireshark-0003-fix-string-overrun-in-plugins-profinet.patch
+Patch4:		wireshark-0004-Restore-Fedora-specific-groups.patch
+Patch5:		wireshark-0005-Fix-paths-in-a-wireshark.desktop-file.patch
+Patch6:		wireshark-0006-Move-tmp-to-var-tmp.patch
+
+Patch1000:	wireshark-2.0.5-path.patch
 
 BuildRoot: 	%{_tmppath}/%{name}-%{version}-root
 
@@ -22,28 +29,30 @@ BuildRequires: 	net-snmp-devel >= 5.0
 BuildRequires: 	net-snmp-utils >= 5.0
 BuildRequires: 	zlib-devel, bzip2-devel
 BuildRequires:  openssl-devel
-BuildRequires:	glib2-devel, gtk2-devel
+BuildRequires:	glib2-devel, gtk3-devel
 BuildRequires:  libelf-devel
-BuildRequires:  python, pcre-devel
+BuildRequires:  python-devel, python-rpm-macros
+BuildRequires:  pcre-devel
 BuildRequires:  gnutls-devel
 BuildRequires:  desktop-file-utils, automake, libtool
 BuildRequires:  bison, flex
+BuildRequires:  git
 BuildRequires:  krb5-devel
 BuildRequires:	libpcap-devel
 BuildRequires:	lua-devel
 
-Requires:	usermode >= 1.37
+Requires:		usermode >= 1.37
 Requires(post):	desktop-file-utils
 Requires(postun): desktop-file-utils
 
-Obsoletes:	ethereal
-Obsoletes:      ethereal-base ethereal-gnome ethereal-gtk+
-Obsoletes:      ethereal-kde ethereal-usermode
-Provides:	ethereal ethereal-gnome
+Obsoletes:		ethereal
+Obsoletes:		ethereal-base ethereal-gnome ethereal-gtk+
+Obsoletes:		ethereal-kde ethereal-usermode
+Provides:		ethereal ethereal-gnome
 
-Vendor:         Project Vine
-Distribution:   Vine Linux
-Packager: inagaki, Takemikaduchi
+Vendor:			Project Vine
+Distribution:	Vine Linux
+Packager:		inagaki
 
 %description
 Wireshark is a network traffic analyzer for Unix-ish operating systems.
@@ -61,9 +70,7 @@ libpcap を使ったコマンドラインツールと,プラグイン,ドキ
 収められています.GUI もこのパッケージに収められています.
 
 %prep
-%setup -q -n %{name}-%{version}
-%patch4 -p1
-%patch5 -p1 -b .lua-vine
+%autosetup -S git
 
 %build
 %ifarch s390 s390x
@@ -72,89 +79,109 @@ export PIECFLAGS="-fPIE"
 export PIECFLAGS="-fpie"
 %endif
 # FC5+ automatic -fstack-protector-all switch
-export RPM_OPT_FLAGS=${RPM_OPT_FLAGS//-fstack-protector/-fstack-protector-all}
-## export CFLAGS="$RPM_OPT_FLAGS $CPPFLAGS -I%{_includedir}/pcap -I%{_includedir}/pcre"
-export CFLAGS="$RPM_OPT_FLAGS $CPPFLAGS -I%{_includedir}/pcre"
-export CXXFLAGS="$RPM_OPT_FLAGS $CPPFLAGS"
-export LDFLAGS="$LDFLAGS -lm -lcrypto"
+export RPM_OPT_FLAGS=${RPM_OPT_FLAGS//-fstack-protector-strong/-fstack-protector-all}
+export CFLAGS="$RPM_OPT_FLAGS $CPPFLAGS $PIECFLAGS -D_LARGEFILE64_SOURCE"
+export CXXFLAGS="$RPM_OPT_FLAGS $CPPFLAGS $PIECFLAGS -D_LARGEFILE64_SOURCE"
+export LDFLAGS="$LDFLAGS -pie -fPIC"
 export PATH="$PATH:/usr/kerberos/bin"
 
-./autogen.sh
-# --disable-warning-as-erros needs for compiling with glib 2.14.0
+autoreconf -ivf
+
 %configure \
    --bindir=%{_sbindir} \
-   --enable-ipv6 \
+   --disable-usr-local \
+   --with-plugins=%{_libdir}/%{name}/plugins/%{version} \
    --with-gnu-ld \
+   --with-pic \
+   --disable-warnings-as-errors \
    --disable-static \
-   --disable-usr-local \
    --enable-wireshark \
-   --with-pic \
-   --with-ssl \
+   --enable-ipv6 \
+   --with-krb5 \
+   --with-lua \
    --with-pcap \
    --with-pcre \
-%if %{?_dist_release} != "vl4"
-   --with-krb5 \
-%else
-   --without-krb5 \
-%endif
-   --with-plugins=%{_libdir}/%{name}/plugins/%{version} \
-   --disable-warnings-as-errors \
+   --with-ssl \
    --without-qt \
-   --with-gtk2=yes \
-   --with-gtk3=no
-time make %{?_smp_mflags}
-
-%install
-rm -rf $RPM_BUILD_ROOT
-
-# The evil plugins hack
-perl -pi -e 's|-L../../epan|-L../../epan/.libs|' plugins/*/*.la
-
-make DESTDIR=$RPM_BUILD_ROOT install
+   --with-gtk=3 \
+   --disable-randpktdump
 
-#symlink tshark to tethereal
-ln -s tshark $RPM_BUILD_ROOT%{_sbindir}/tethereal
+#remove rpath
+sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
+sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
 
-#empty?!
-rm -f $RPM_BUILD_ROOT%{_sbindir}/idl2wrs
-
-# install support files for usermode, gnome and kde
-mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d
-install -m 644 %{SOURCE1} $RPM_BUILD_ROOT/%{_sysconfdir}/pam.d/wireshark
-mkdir -p $RPM_BUILD_ROOT/%{_sysconfdir}/security/console.apps
-install -m 644 %{SOURCE2} $RPM_BUILD_ROOT/%{_sysconfdir}/security/console.apps/wireshark
-mkdir -p $RPM_BUILD_ROOT/%{_bindir}
-ln -s consolehelper $RPM_BUILD_ROOT/%{_bindir}/wireshark
+time make %{?_smp_mflags}
 
-mv $RPM_BUILD_ROOT/%{_sbindir}/wireshark-gtk $RPM_BUILD_ROOT/%{_sbindir}/wireshark
+%install
+rm -rf %{buildroot}
 
-# install man
-## mkdir -p $RPM_BUILD_ROOT/%{_mandir}/man1
-## install -m 644 *.1 $RPM_BUILD_ROOT/%{_mandir}/man1
+make DESTDIR=%{buildroot} install
 
 # Install python stuff.
-mkdir -p $RPM_BUILD_ROOT%{python_sitelib}
-install -m 644 tools/wireshark_be.py tools/wireshark_gen.py  $RPM_BUILD_ROOT%{python_sitelib}
+mkdir -p %{buildroot}%{python_sitelib}
+install -m 644 tools/wireshark_be.py tools/wireshark_gen.py  %{buildroot}%{python_sitelib}
+
+mv %{buildroot}%{_sbindir}/wireshark-gtk %{buildroot}%{_sbindir}/wireshark
+rm -f %{buildroot}%{_datadir}/applications/wireshark-gtk.desktop %{buildroot}%{_datadir}/applications/wireshark-gtk.desktop
+desktop-file-validate %{buildroot}%{_datadir}/applications/wireshark.desktop
+mkdir -p %{buildroot}/%{_datadir}/pixmaps
+install -m 644 image/wsicon48.png %{buildroot}/%{_datadir}/pixmaps/wireshark.png
+
+#install devel files (inspired by debian/wireshark-dev.header-files)
+install -d -m 0755  %{buildroot}%{_includedir}/wireshark
+IDIR="%{buildroot}%{_includedir}/wireshark"
+mkdir -p "${IDIR}/epan"
+mkdir -p "${IDIR}/epan/crypt"
+mkdir -p "${IDIR}/epan/ftypes"
+mkdir -p "${IDIR}/epan/dfilter"
+mkdir -p "${IDIR}/epan/dissectors"
+mkdir -p "${IDIR}/epan/wmem"
+mkdir -p "${IDIR}/wiretap"
+mkdir -p "${IDIR}/wsutil"
+mkdir -p %{buildroot}%{_udevrulesdir}
+install -m 644 config.h register.h      "${IDIR}/"
+install -m 644 cfile.h file.h           "${IDIR}/"
+install -m 644 ws_symbol_export.h       "${IDIR}/"
+install -m 644 epan/*.h                 "${IDIR}/epan/"
+install -m 644 epan/crypt/*.h           "${IDIR}/epan/crypt"
+install -m 644 epan/ftypes/*.h          "${IDIR}/epan/ftypes"
+install -m 644 epan/dfilter/*.h         "${IDIR}/epan/dfilter"
+install -m 644 epan/dissectors/*.h      "${IDIR}/epan/dissectors"
+install -m 644 epan/wmem/*.h            "${IDIR}/epan/wmem"
+install -m 644 wiretap/*.h              "${IDIR}/wiretap"
+install -m 644 wsutil/*.h               "${IDIR}/wsutil"
+install -m 644 ws_diag_control.h        "${IDIR}/"
+install -m 644 %{SOURCE4} %{buildroot}%{_udevrulesdir}
 
-desktop-file-install --vendor=                             \
-        --dir ${RPM_BUILD_ROOT}%{_datadir}/applications    \
-        %{SOURCE3}
 
-mkdir -p $RPM_BUILD_ROOT/%{_datadir}/pixmaps
-install -m 644 image/wsicon48.png $RPM_BUILD_ROOT/%{_datadir}/pixmaps/wireshark.png
+# install support files for usermode, gnome and kde
+mkdir -p %{buildroot}%{_sysconfdir}/pam.d
+install -m 644 %{SOURCE1} %{buildroot}%{_sysconfdir}/pam.d/wireshark
+mkdir -p %{buildroot}%{_sysconfdir}/security/console.apps
+install -m 644 %{SOURCE2} %{buildroot}%{_sysconfdir}/security/console.apps/wireshark
+mkdir -p %{buildroot}%{_bindir}
+ln -s consolehelper %{buildroot}%{_bindir}/wireshark
 
+# Remove libtool archives and static libs
+find %{buildroot} -type f -name "*.la" -delete
 
-# Remove .la files
-rm -f $RPM_BUILD_ROOT/%{_libdir}/%{name}/plugins/%{version}/*.la
+# Remove idl2wrs
+rm -f %{buildroot}%{_sbindir}/idl2wrs
 
-# Remove .la files in libdir
-rm -f $RPM_BUILD_ROOT/%{_libdir}/*.la
+rm -f %{buildroot}%{_mandir}/man1/androiddump.*
+rm -f %{buildroot}%{_mandir}/man1/udpdump.*
+rm -f %{buildroot}%{_mandir}/man4/extcap.*
 
 %clean
 rm -rf $RPM_BUILD_ROOT
 
+%pre
+getent group wireshark >/dev/null || groupadd -r wireshark
+getent group usbmon >/dev/null || groupadd -r usbmon
+
 %post
 /sbin/ldconfig
+/sbin/udevadm trigger --subsystem-match=usbmon
 update-desktop-database -q
 
 %postun 
@@ -164,33 +191,32 @@ update-desktop-database -q
 %files
 %defattr(-,root,root)
 %doc AUTHORS COPYING ChangeLog INSTALL NEWS README* 
-%{_sbindir}/androiddump
-%{_sbindir}/editcap
-%{_sbindir}/tshark
-%{_sbindir}/mergecap
-%{_sbindir}/text2pcap
-%{_sbindir}/dftest
 %{_sbindir}/capinfos
 %{_sbindir}/captype
+%{_sbindir}/dftest
+%attr(0750, root, wireshark) %caps(cap_net_raw,cap_net_admin=ep) %{_sbindir}/dumpcap
+%{_sbindir}/editcap
+%{_sbindir}/mergecap
 %{_sbindir}/randpkt
-%{_sbindir}/dumpcap
-%{_sbindir}/tethereal
 %{_sbindir}/rawshark
+%{_sbindir}/sharkd
 %{_sbindir}/reordercap
+%{_sbindir}/text2pcap
+%{_sbindir}/tshark
+%{_udevrulesdir}/90-wireshark-usbmon.rules
 %{python_sitelib}/*
 %{_libdir}/lib*
-%{_mandir}/man1/androiddump.*
-%{_mandir}/man1/editcap.*
-%{_mandir}/man1/tshark.*
-%{_mandir}/man1/mergecap.*
-%{_mandir}/man1/text2pcap.*
 %{_mandir}/man1/capinfos.*
+%{_mandir}/man1/dftest.*
 %{_mandir}/man1/dumpcap.*
-%{_mandir}/man1/reordercap.*
-%{_mandir}/man4/wireshark-filter.*
+%{_mandir}/man1/editcap.*
+%{_mandir}/man1/mergecap.*
 %{_mandir}/man1/rawshark.*
-%{_mandir}/man1/dftest.*
 %{_mandir}/man1/randpkt.*
+%{_mandir}/man1/reordercap.*
+%{_mandir}/man1/text2pcap.*
+%{_mandir}/man1/tshark.*
+%{_mandir}/man4/wireshark-filter.*
 %{_libdir}/wireshark
 %config(noreplace) %{_sysconfdir}/pam.d/wireshark
 %config(noreplace) %{_sysconfdir}/security/console.apps/wireshark
@@ -227,8 +253,16 @@ update-desktop-database -q
 %{_sbindir}/wireshark
 %{_mandir}/man1/wireshark.*
 
+%{_includedir}/wireshark
+%{_libdir}/pkgconfig/%{name}.pc
 
 %changelog
+* Sat Mar 03 2018 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 2.4.5-1
+- new upstream release.
+- dropped Patch5.
+- renumbered Patch4 to Patch1000.
+- imported Patch1-6 from rawhide.
+
 * Sun Jul 31 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 2.0.5-1
 - new upstream release
 - update Patch4 (wireshark-2.0.5-path.patch)