Create perl script to append existing AUTHORS file with information from git log.

new AUTHORS file can be created with "gen-authors" build parameter

The "original" AUTHORS file has been fixed up to be kind to parsers (so no one gets excluded) and renamed to AUTHORS.src.  This preserves the features authors worked on.  For authors that didn't list features, they may be converted to just getting information from git.

Change-Id: I9a4c4091e229f7f5e1c46d864527a98c1278e451
Reviewed-on: https://code.wireshark.org/review/14231
Petri-Dish: Michael Mann <mmann78@netscape.net>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
Reviewed-by: Michael Mann <mmann78@netscape.net>
This commit is contained in:
Michael Mann 2016-02-28 17:32:13 -05:00
parent b70d1d7e14
commit 8435145b1f
5 changed files with 4502 additions and 16 deletions

348
AUTHORS
View File

@ -1,4 +1,4 @@

Original Author
-------- ------
@ -2179,10 +2179,10 @@ metatech <metatechbe[AT]gmail.com> {
IBM WebSphere MQ protocol support
IBM MQ Programmable Command Formats protocol support
Initial BEA Tuxedo protocol support
Distributed Relational Database Architecture protocol support
Borland StarTeam protocol support
Adobe Real Time Messaging Protocol support
ActiveMQ OpenWire protocol support
Distributed Relational Database Architecture protocol support
Borland StarTeam protocol support
Adobe Real Time Messaging Protocol support
ActiveMQ OpenWire protocol support
}
Brian Wheeler <Brian.Wheeler[AT]arrisi.com> {
@ -2274,12 +2274,12 @@ Henry Ptasinski <henryp[AT]broadcom.com> {
Roberto Morro <roberto.morro[AT]telecomitalia.it> {
Support for GMPLS UNI and E-NNI objects/TLVs
in RSVP and OSPF
in RSVP and OSPF
RSVP: Support for PROTECTION obj c-type 2 (RFC4872),
new TLVs for IF_ID (RFC4920), Path Key subobj in ERO (RFC5520),
new ASSOCIATION obj c-type 4 (oif2008.389),
new LSP_ATTRIBUTES and LSP_REQUIRED_ATTRIBUTES objects (RFC5420),
and various changes/improvements
new TLVs for IF_ID (RFC4920), Path Key subobj in ERO (RFC5520),
new ASSOCIATION obj c-type 4 (oif2008.389),
new LSP_ATTRIBUTES and LSP_REQUIRED_ATTRIBUTES objects (RFC5420),
and various changes/improvements
}
@ -2299,7 +2299,7 @@ Jeff Connelly <shellreef+mp2p[AT]gmail.com> {
MANOLITO support
}
Irene Rüngeler <i.ruengeler[AT]fh-muenster.de {
Irene Rüngeler <i.ruengeler[AT]fh-muenster.de> {
Graphical SCTP analysis
Support PPID and SCTP port based selection in Decode as
}
@ -3599,7 +3599,7 @@ Remi Vichery <remi.vichery[AT]gmail.com> {
Dissector for Stateless Transport Tunneling (STT)
}
Kevin Cox <kevincox{AT]kevincox.ca> {
Kevin Cox <kevincox[AT]kevincox.ca> {
Dissector for Ceph
}
@ -3699,7 +3699,6 @@ Mohammad Hanif <mhanif[AT]nexthop.com>
Reinhard Speyerer <rspmn[AT]arcor.de>
Patrick Kursawe <phosphan[AT]gentoo.org>
Arsen Chaloyan <achaloyan[AT]yahoo.com>
<melerski[AT]poczta.onet.pl>
Arnaud Jacques <webmaster[AT]securiteinfo.com>
D. Manzella <manzella[AT]lucent.com>
Jari Mustajarvi <jari.mustajarvi[AT]nokia.com>
@ -3728,8 +3727,8 @@ Stas Grabois <sagig[AT]radware.com>
Ainsley Pereira <APereira[AT]Witness.com>
Philippe Mazeau <philippe.mazeau[AT]swissvoice.net>
Carles Kishimoto <ckishimo[AT]ac.upc.es>
Dennis Lim <postadal[AT]suse.cz>
Dennis Lim <Dennis.Lim[AT]motorola.com>
<postadal[AT]suse.cz>
Martin van der Werff <martin[AT]vanderwerff.org>
Marco van den Bovenkamp <marco[AT]linuxgoeroe.dhs.org>
Ming Zhang <mingz[AT]ele.uri.edu>
@ -3821,7 +3820,7 @@ Giodi Giorgi <g.giorgi[AT]gmail.com>
Peter Hertting <Peter.Hertting[AT]gmx.net>
Jess Balint <jbalint[AT]gmail.com>
Bahaa Naamneh <b.naamneh[AT]gmail.com>
Magnus Sörman <magnus.sorman[AT]ericsson.com
Magnus Sörman <magnus.sorman[AT]ericsson.com>
Pascal Quantin <pascal.quantin[AT]gmail.com>
Roy Marples <roy[AT]marples.name>
Ward van Wanrooij <ward[AT]ward.nu>
@ -3865,7 +3864,7 @@ DeCount <aatrade[AT]libero.it>
Andras Veres-Szentkiralyi <vsza[AT]vsza.hu>
Jakob Hirsch <jh.wireshark-bugzilla[AT]plonk.de>
Роман Донченко <dpb[AT]corrigendum.ru>
<billyjeans[AT]gmail.com>
Роман Донченко <billyjeans[AT]gmail.com>
Evan Huus <eapache[AT]gmail.com>
Tom Cook <tcook[AT]ixiacom.com>
Tom Alexander <talexander[AT]ixiacom.com>
@ -3926,6 +3925,323 @@ Robert Long <rlong[AT]sandia.gov>
James Lynch <lynch007[AT]gmail.com>
Chidambaram Arunachalam <carunach[AT]cisco.com>
From git log
---------------
Ronnie Sahlberg ronniesahlberg[AT]gmail.com
Martin Kaiser wireshark[AT]kaiser.cx
Michael Tüxen tuexen[AT]wireshark.org
Tomas Kukosa tomas.kukosa[AT]siemens.com
Richard Sharpe realrichardsharpe[AT]gmail.com
Peter Wu peter[AT]lekensteyn.nl
João Valverde joao.valverde[AT]tecnico.ulisboa.pt
Irene Rüngeler ruengeler[AT]wireshark.org
Roland Knall roland.knall[AT]br-automation.com
Anish Bhatt anish[AT]chelsio.com
Tom Haynes loghyr[AT]primarydata.com
Maarten Bezemer maarten.bezemer[AT]gmail.com
David Ameiss dameiss[AT]29west.com
Marian Ďurkovič md[AT]bts.sk
Juanjo Martin juanjo[AT]rti.com
AdrianSimionov daniel.simionov[AT]gmail.com
Matthieu Texier matthieu[AT]texier.tv
Luke Mewburn luke[AT]mewburn.net
Mikael Kanstrup mikael.kanstrup[AT]gmail.com
Petr Gotthard petr.gotthard[AT]honeywell.com
dsrsupport eugene.exarevsky[AT]dsr-company.com
Cal Turney cturney[AT]charter.net
Diederik de Groot ddegroot[AT]talon.nl
D. Ulis daulis0[AT]gmail.com
Jim Young jyoung[AT]gsu.edu
Kevin Bracey kevin.bracey[AT]arm.com
Gregor Beck gbeck[AT]sernet.de
Mikhail Koreshkov drkor[AT]hotbox.ru
Tatsuhiro Tsujikawa tatsuhiro.t[AT]gmail.com
Aditya Jain aditya.jain[AT]samsung.com
Birol Capa birol.capa[AT]siemens.com
Cedric Izoard cedric.izoard[AT]ceva-dsp.com
J. Bruce Fields bfields[AT]redhat.com
Lukas Emersberger lukas.emersberger[AT]gmail.com
Marko Hrastovec marko.hrastovec[AT]gmail.com
Matthieu Coudron mattator[AT]gmail.com
Philip Rosenberg-Watt p.rosenberg-watt[AT]cablelabs.com
Sergey Avseyev sergey.avseyev[AT]gmail.com
Chris Brandson chris.brandson[AT]gmail.com
Darshan Nevgi darshan.sn[AT]samsung.com
Jeffrey Smith whydoubt[AT]gmail.com
Peter Ross peter.ross[AT]dsto.defence.gov.au
Petr Gotthard petr.gotthard[AT]centrum.cz
Richard Sharpe rsharpe[AT]samba.org
Yan Burman yanb[AT]mellanox.com
anilkumar911 anilkumar911[AT]gmail.com
Alex Badea abadea[AT]ixiacom.com
Andreas Gruenbacher andreas.gruenbacher[AT]gmail.com
Daniël van Eeden wireshark[AT]myname.nl
Dmitry Bazhenov dima_b[AT]pigeonpoint.com
Hanspeter Portner dev[AT]open-music-kontrollers.ch
Joseph Huffman jhuffman[AT]codeaurora.org
Josip Medved jmedved[AT]jmedved.com
Michal Pazdera michal.pazdera[AT]gmail.com
Rishi Dev Singh rishi.dev[AT]samsung.com
Sylvain Munaut tnt[AT]246tNt.com
Tim Furlong tim.furlong[AT]gmail.com
Weston Andros Adamson dros[AT]primarydata.com
Yann Lejeune ylejeune[AT]netyl.org
Alexander Wetzel alexander.wetzel[AT]web.de
Branislav Makan branislav.makan1994[AT]gmail.com
Britt McKinley bmckinley[AT]sonusnet.com
David Morsberger dave[AT]morsberger.com
DiablosOffens DiablosOffens[AT]gmx.de
Ebben Aries exa[AT]fb.com
Edwin Groothuis edwin[AT]mavetju.org
Eugene Sukhodolin eugene[AT]sukhodolin.com
Gloria Pozuelo gloria.pozuelo[AT]bics.com
John A. Thacker johnthacker[AT]gmail.com
Julien STAUB atsju2[AT]yahoo.fr
Jérôme LAFORGE jerome.laforge[AT]gmail.com
Nicolas S. Dade nic.dade[AT]gmail.com
Paul Offord paul.offord[AT]advance7.com
Simon Barber simon.barber[AT]meraki.net
Wasim Abu Moch wasim[AT]mellanox.com
YFdyh000 yfdyh000[AT]gmail.com
Christoph Schlosser christoph.schlosser[AT]br-automation.com
Claudius Zingerli czingerl[AT]gmail.com
Cody Doucette doucette[AT]bu.edu
Daniel Mack daniel[AT]zonque.org
Dave Rigby daver[AT]couchbase.com
Florian Lohoff f[AT]zz.de
Mark Weel markweel[AT]hotmail.com
Matt Texier matthieu[AT]texier.tv
Nathan Cole nath[AT]thecoleresidence.co.uk
Pascal Artho pascalartho[AT]gmail.com
Pedro Jose Marron pjmarron[AT]locoslab.com
Peter Membrey peter[AT]membrey.hk
Ryan Mullen rmmullen[AT]gmail.com
Shu Shen shu.shen[AT]gmail.com
Tigran Mkrtchyan tigran.mkrtchyan[AT]desy.de
Vasil Velichckov vvvelichkov[AT]gmail.com
Alexander Gärtner sphinxs1988[AT]googlemail.com
Alexander Stein alexanders83[AT]web.de
Andreas Schultz aschultz[AT]warp10.net
Christian Lamparter chunkeey[AT]googlemail.com
Christian Tellefsen chris-git[AT]tellefsen.net
Christoph Jähnigen nuabaranda[AT]web.de
Christopher Kilgour techie[AT]whiterocker.com
David Ameiss david[AT]ameissnet.com
Dhiru Kholia kholia[AT]kth.se
Dom Gifford Dominic.Gifford[AT]atmel.com
Francois Schneider francois.schneider[AT]airbus.com
Jamil Nimeh jnimeh[AT]gmail.com
Jason Heimann jheimann[AT]pertino.com
Jean Thomas jeanthomas[AT]sierrawireless.com
Jo Rueschel wireshark[AT]rueschel.de
Josef Baumgartner josef.baumgartner[AT]br-automation.com
Kevin Grigorenko kevin.grigorenko[AT]us.ibm.com
Lotte Steenbrink lotte[AT]zombietetris.de
Luca Melette luca[AT]srlabs.de
Luke Chou luke.chou[AT]gmail.com
Marcel Essig marcel.essig[AT]gmx.de
Marius mareko.paliga[AT]gmail.com
Michael Oed michael.oed[AT]gmail.com
Michele Baldessari michele[AT]acksyn.org
Mike Gerschefske msgersch2[AT]gmail.com
Moeller, Thies thies.moeller[AT]baslerweb.com
Moraney Jalil moraney.jalil[AT]outlook.com
Noel Power noel.power[AT]suse.com
Owen Williams williams.owen[AT]gmail.com
Pavel Karneliuk pavel_karneliuk[AT]epam.com
Pavlos Antoniou pant[AT]intracom-telecom.com
Ray Gomez rayvincent.gomez[AT]gmail.com
Richard Kuemmel kuemmel.ric[AT]googlemail.com
Robert Cragie robert.cragie[AT]arm.com
Shinjo Park peremen[AT]gmail.com
Slava Shwartsman slavash[AT]mellanox.com
Sven Eckelmann sven[AT]open-mesh.com
Thies Moeller thies.moeller[AT]baslerweb.com
Tobias Brunner tobias[AT]strongswan.org
Vikhyat Umrao vumrao[AT]redhat.com
Vikram Hegde vikram.h[AT]samsung.com
Vincent Helfre vincent.helfre[AT]gmx.net
Vincenzo Reale smart2128[AT]baslug.org
Volker Lendecke vl[AT]samba.org
Warren Moxam warrenmptgrey[AT]gmail.com
anonsvn anonsvn[AT]localhost
Дмитрий Цветцих dmitrycvet[AT]gmail.com
Adam Goldman adam.goldman[AT]intel.com
Adam Pridgen adam.pridgen[AT]thecoverofnight.com
Adrian Simionov daniel.simionov[AT]gmail.com
Adrian-Ken Rueegsegger ken[AT]codelabs.ch
Alan Partis alpartis[AT]thundernet.com
Alex Tessmer dev[AT]tessmer.me
AlexL loginov.alex.valer[AT]gmail.com
Ambarish Malpani ambarish[AT]defend7.com
Amine Kherbouche amine.kherbouche[AT]6wind.com
Andreas Leibold andreas.leibold[AT]harman.com
Andreas Stieger andreas.stieger[AT]gmx.de
Andreas Urke arurke[AT]netwurke.com
Andrei Cipu acipu[AT]ixiacom.com
Andrew Chernyh andrew.chernyh[AT]gmail.com
Andrew Hoag andrew.hoag[AT]aireon.com
Andy Ling Andy.Ling[AT]quantel.com
Andy Ling andy.ling[AT]s-a-m.com
Anndy Ke anndymaktub[AT]yahoo.com.tw
Anthony Coddington anthony.coddington[AT]endace.com
Anton Thomasson anton.thomasson[AT]ericsson.com
Arnd Hannemann arnd[AT]arndnet.de
Artur Nowosielski artnowo[AT]gmail.com
Basil addremover[AT]gmail.com
Bastien Bailly babassbailly[AT]free.fr
Ben Burwell bburwell[AT]lutron.com
Ben Fox-Moore ben.foxmoore[AT]accelleran.com
Benjamin Hesmans benjamin.hesmans[AT]uclouvain.be
Benjamin Roch benjamin.roch[AT]tttech.com
Bradford Boyle bradford.d.boyle[AT]gmail.com
Cathy Yang Y cathy.y.yang[AT]ericsson.com
Cedric Izoard cedric.izoard[AT]rivierawaves.com
Cenk Gündoğan cnkgndgn[AT]gmail.com
Charles Nepveu charles.nepveu[AT]verint.com
Chris Dunlop chris.dunlop3[AT]gmail.com
Christian M. Amsüss chrysn[AT]fsfe.org
Christoph Burger-Scheidlin mail[AT]christoph.burger-scheidlin.name
Christopher Maynard Christopher.Maynard[AT]igt.com
Chuan He bupthc[AT]gmail.com
Chugzilla chugzilla77[AT]gmail.com
Chun-Yeow Yeoh yeohchunyeow[AT]gmail.com
Cédric Delmas cedricde[AT]outlook.fr
Daniel Stenberg daniel[AT]haxx.se
Dave Tapuska dtapuska[AT]google.com
David Arnold d[AT]0x1.org
David Creswick dcrewi[AT]gyrae.net
David Tapuska dave[AT]tapuska.com
Denis Janssen janssend[AT]gmail.com
Dhananjay Patki dhpatki[AT]cisco.com
Didier Arenzana darenzana[AT]yahoo.fr
Doug Brown doug[AT]downtowndougbrown.com
Edward Dao edmailbox[AT]gmail.com
Etienne Millon etienne[AT]cryptosense.com
Eugene Adell eugene.adell[AT]d2-si.eu
Fabian Raetz fabian.raetz[AT]gmail.com
Fabrizio Demaria fabrizio.demaria[AT]intel.com
Ganesh Nawsupe ganesh991[AT]gmail.com
Garming Sam garming[AT]catalyst.net.nz
Gergely Nagy ngg[AT]ngg.hu
Gregor Jasny gjasny[AT]googlemail.com
Gregor Miernik gregor.miernik[AT]hytec.de
Guy Davies aguydavies[AT]gmail.com
Herwin Weststrate herwin[AT]quarantainenet.nl
Hiroaki KAWAI hiroaki.kawai[AT]gmail.com
Ilya Gavrilov ilya.dev[AT]gmail.com
Ionut Ceausu ionut.ceausu[AT]gmail.com
JC Wren jcwren[AT]jcwren.com
James Coleman jamesc[AT]dspsrv.com
Jan Kaisrlik j.kaisrlik[AT]seznam.cz
Jan Seda hodor[AT]hodor.cz
Jan-Hendrik Bolte jabolte[AT]uos.de
Jeroen Roovers jer[AT]gentoo.org
Jeroen Sack jeroen[AT]jeroensack.nl
Johan Wahl johan.wahl[AT]ericsson.com
John Miner optommp[AT]gmail.com
Jonas Falkevik jonas.falkevik[AT]gmail.com
Jorge Power jpower[AT]rsscorp.org
João Valverde j[AT]v6e.pt
Juan Jose Martin Carrascosa juanjo[AT]rti.com
Juan Matias jmrepetti[AT]gmail.com
Jun Wang sdn_app[AT]163.com
JustinKu jiunrong[AT]gmail.com
Jörg Mayer jmayer[AT]egg.fg-networking.de
Krishna Chaitanya chaitanya.mgit[AT]gmail.com
Lars Sundström lars.x.sundstrom[AT]ericsson.com
Lasse Luttermann Poulsen lasse.luttermann[AT]gmail.com
Laurenz Kamp laurenz.kamp[AT]gmx.de
Lev Stipakov lstipakov[AT]gmail.com
Malcolm Walters malcolm.walters[AT]acano.com
Marc Bevand mbevand[AT]google.com
Marc Fournier marc.fournier[AT]camptocamp.com
Mark Cunningham launchpad[AT]markcunningham.ie
MarkPhillips mark.s.phillips[AT]outlook.com
Martin Kaiser martin.kaiser[AT]paytec.ch
Martin Tibensky martin.tibensky[AT]alcatel-lucent.com
Martin Tibenský martin.tibensky[AT]alcatel-lucent.com
Matej Košík 5764c029b688c1c0d24a2e97cd764f[AT]gmail.com
Micha Reiser michafamreiser.ch
Michael Adam obnox[AT]samba.org
Michael McConville mmcco[AT]mykolab.com
Michael Pergament mpergament[AT]googlemail.com
Michal Privoznik miso.privoznik[AT]gmail.com
Michal Privoznik mprivozn[AT]redhat.com
Mike Frysinger vapier[AT]chromium.org
Miltos Patsiouras mipatsio[AT]gmail.com
Moshe Kaplan me[AT]moshekaplan.com
Nick Bedbury npbedbur[AT]syr.edu
Nick Carter ncarter100[AT]gmail.com
Nicolas Cavallari nicolas.cavallari[AT]green-communications.fr
Nils Ohlmeier github[AT]ohlmeier.org
Olaf Bergmann bergmann[AT]tzi.org
Olga Kornievskaia kolga[AT]netapp.com
Oren Koler clicker78[AT]gmail.com
Orgad Shaneh orgads[AT]gmail.com
Oscar Gonzalez de Dios oscar.gonzalezdedios[AT]telefonica.com
Osman Sakalla osman.sakalla[AT]ericsson.com
Patrice Fournier patrice.fournier[AT]ifax.com
Patrick MacArthur pmacarth[AT]iol.unh.edu
Patrick Servello patrick.servello[AT]gmail.com
Paul Emge paul.emge[AT]digidescorp.com
Pavel Moravec mgr.pavel[AT]gmail.com
Pavel Strnad pavel_strnad[AT]hotmail.com
Peng Li seudut[AT]gmail.com
Peng Tao tao.peng[AT]primarydata.com
Peter Palúch Peter.Paluch[AT]fri.uniza.sk
Petr Štetiar petr.stetiar[AT]gaben.cz
Philipp Hancke fippo[AT]andyet.net
Ricardo Cristian Ramirez r.cristian.ramirez[AT]gmail.com
Rich Coe richcoe2[AT]gmail.com
Robert Beardsworth rob_beardsworth[AT]hotmail.com
Robert Cragie robert.cragie[AT]gmail.com
Robert P tehownt[AT]gmail.com
Roman Leonhartsberger ro.leonhartsberger[AT]gmail.com
Roman Volkov volkoff_roman[AT]ukr.net
Russel Howe russel[AT]appliedinvention.com
Sebastian Kloeppel sk[AT]nakedape.net
Sebastian Schildt sebastian[AT]frozenlight.de
Selva Kumar v.selvamuthukumar[AT]gmail.com
Selvamegala sselvamegala[AT]gmail.com
Sergio Moreno Mozota sergio.morenomozota[AT]telefonica.com
Shekhar Chandra ranushekhar[AT]gmail.com
Shoichi Sakane wireshark-shoichi[AT]tanu.org
Simon Barber sbarber[AT]parc.com
Simon Zhong szhong.jnpr[AT]gmail.com
Soumya Koduri skoduri[AT]redhat.com
Steev Klimaszewski threeway[AT]gmail.com
Stefan Doehla stefan.doehla[AT]iis.fraunhofer.de
Stefan Pöschel github[AT]basicmaster.de
Stephan Kappertz octopus.sk[AT]googlemail.com
Stephane Bryant stephane.ml.bryant[AT]gmail.com
Stephen Donnelly stephen.donnelly[AT]emulex.com
Sunil Mushran sunil.mushran[AT]oracle.com
Tibensky tibensky233[AT]gmail.com
Tim (Thanh) Nguyen tnnguyen[AT]broadcom.com
Timo Warns timow+github[AT]DiningPhilosopher.DE
Timothy Geiser slimshady007[AT]inbox.lv
Tobias Stoeckmann tobias[AT]stoeckmann.org
Trond Myklebust trond.myklebust[AT]primarydata.com
Umberto Corponi umberto.corponi[AT]athonet.com
Victor Voronkov victor.voronkov[AT]gmail.com
Vik vkp129+ubuntu[AT]gmail.com
Vikram Hegde vikram.h[AT]amsung.com
Ville Skyttä ville.skytta[AT]iki.fi
Vladimir Kondratiev qca_vkondrat[AT]qca.qualcomm.com
Weston Schmidt weston_schmidt[AT]alumni.purdue.edu
Xavier Brouckaert xabrouck[AT]cisco.com
Yasuyuki Tanaka yatch[AT]isl.rdc.toshiba.co.jp
cff339 cff339[AT]gmail.com
glores gloria.pozuelo[AT]bics.com
kardam netkardam[AT]gmail.com
kkoizumi kkoizumi46[AT]gmail.com
Øyvind Rønningstad ronningstad[AT]gmail.com
Acknowledgements
------------
Dan Lasley <dlasley[AT]promus.com> gave permission for his
dumpit() hex-dump routine to be used.

3960
AUTHORS.src Normal file

File diff suppressed because it is too large Load Diff

View File

@ -2696,6 +2696,14 @@ add_custom_target(test-sh
-P ${CMAKE_SOURCE_DIR}/cmake/modules/GenerateTestSh.cmake
DEPENDS ${CMAKE_SOURCE_DIR}/cmake/modules/GenerateTestSh.cmake
)
ADD_CUSTOM_TARGET(
gen-authors ALL
COMMAND git shortlog -sne | cut -c8- > ${CMAKE_SOURCE_DIR}/AUTHORS.git
COMMAND ${PERL_EXECUTABLE} ${CMAKE_SOURCE_DIR}/tools/generate_authors.pl ${CMAKE_SOURCE_DIR}/AUTHORS.src ${CMAKE_SOURCE_DIR}/AUTHORS.git > ${CMAKE_SOURCE_DIR}/AUTHORS
)
set_target_properties(test-sh PROPERTIES FOLDER "Tests")
add_custom_target(test-programs

View File

@ -1682,3 +1682,8 @@ if HAVE_DOXYGEN
rm -f wsar_html.zip
zip -rq wsar_html.zip wsar_html
endif
gen-authors:
#Generate list of AUTHORS (Name + E-Mail) sort by number of commit
git shortlog -sne | cut -c8- > $(top_srcdir)/AUTHORS.git
$(PERL) $(top_srcdir)/tools/generate_authors.pl $(top_srcdir)/AUTHORS.src $(top_srcdir)/AUTHORS.git > $(top_srcdir)/AUTHORS

197
tools/generate_authors.pl Normal file
View File

@ -0,0 +1,197 @@
#!/usr/bin/perl
my $debug = 0;
# 0: off
# 1: specific debug
# 2: full debug
#
# Generate the AUTHORS file combining existing AUTHORS file with
# git commit log.
#
# Usage: generate_authors.pl <original AUTHORS file> <output of git shortlog>
#
# Copyright 2016 Michael Mann (see AUTHORS file)
#
# Wireshark - Network traffic analyzer
# By Gerald Combs <gerald@wireshark.org>
# Copyright 1998 Gerald Combs
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
use warnings;
use strict;
use Getopt::Long;
my $state = "";
my %contributors = ();
my $is_contributing = 0;
my $crlf_find = "\n";
my $crlf_replace = "\r\n";
my $header = "
Original Author
-------- ------
Gerald Combs <gerald[AT]wireshark.org>
";
my $trailer = "
Acknowledgements
------------
Dan Lasley <dlasley[AT]promus.com> gave permission for his
dumpit() hex-dump routine to be used.
Mattia Cazzola <mattiac[AT]alinet.it> provided a patch to the
hex dump display routine.
We use the exception module from Kazlib, a C library written by
Kaz Kylheku <kaz[AT]ashi.footprints.net>. Thanks go to him for
his well-written library. The Kazlib home page can be found at
http://users.footprints.net/~kaz/kazlib.html
We use Lua BitOp, written by Mike Pall, for bitwise operations
on numbers in Lua. The Lua BitOp home page can be found at
http://bitop.luajit.org/
Henrik Brix Andersen <brix[AT]gimp.org> gave permission for his
webbrowser calling routine to be used.
Christophe Devine <c.devine[AT]cr0.net> gave permission for his
SHA1 routines to be used.
snax <snax[AT]shmoo.com> gave permission to use his(?) weak key
detection code from Airsnort.
IANA gave permission for their port-numbers file to be used.
We use the natural order string comparison algorithm, written by
Martin Pool <mbp[AT]sourcefrog.net>.
Emanuel Eichhammer <support[AT]qcustomplot.com> granted permission
to use QCustomPlot.
";
my $git_log_text = "
From git log
---------------
";
# Perl trim function to remove whitespace from the start and end of the string
sub trim($)
{
my $string = shift;
$string =~ s/^\s+//;
$string =~ s/\s+$//;
return $string;
}
sub parse_author_name {
my $full_name = $_[0];
if ($full_name =~ /^([\w\.\-\'\x80-\xff]+(\s*[\w+\.\-\'\x80-\xff])*)\s+<([^>]*)>/) {
#Make an exception for Gerald because he's part of the header
if ($3 ne "gerald[AT]wireshark.org") {
$contributors{$3} = $1;
print "$full_name\n";
}
} elsif ($full_name =~ /^([\w\.\-\'\x80-\xff]+(\s*[\w+\.\-\'\x80-\xff])*)\s+\(/) {
$contributors{"<no_email>"} = $1;
print "$full_name\n";
}
}
sub parse_git_name {
my $full_name = $_[0];
my $name;
my $find = "\@";
my $replace = "[AT]";
my $email;
if ($full_name =~ /^([^<]*)\s*<([^>]*)>/) {
$name = $1;
#Convert real email address to "spam proof" one
$email = $2;
$email =~ s/$find/$replace/g;
if (!exists($contributors{ $email })) {
#Make an exception for Gerald because he's part of the header
if ($email ne "gerald[AT]wireshark.org") {
print "$name\t\t$email\r\n";
}
}
}
}
# ---------------------------------------------------------------------
#
# MAIN
#
$header =~ s/$crlf_find/$crlf_replace/g;
print $header;
open( my $author_fh, '<', $ARGV[0] ) or die "Can't open $ARGV[0]: $!";
while ( my $line = <$author_fh> ) {
chomp $line;
last if ($line =~ "Acknowledgements");
if ($line =~ "Contributors") {
$is_contributing = 1;
} elsif ($is_contributing == 0) {
next;
}
if ($line =~ /([^\{]*)\{/) {
parse_author_name($line);
$state = "s_in_bracket";
} elsif ($state eq "s_in_bracket") {
if ($line =~ /([^\}]*)\}/) {
print "$line\n";
$state = "";
} else {
print "$line\n";
}
} elsif ($line =~ /</) {
parse_author_name($line);
} elsif ($line =~ "(e-mail address removed at contributor's request)") {
parse_author_name($line);
} else {
print "$line\n";
}
}
close $author_fh;
$git_log_text =~ s/$crlf_find/$crlf_replace/g;
print $git_log_text;
open( my $git_author_fh, '<', $ARGV[1] ) or die "Can't open $ARGV[1]: $!";
while ( my $git_line = <$git_author_fh> ) {
chomp $git_line;
parse_git_name($git_line);
}
close $git_author_fh;
$trailer =~ s/$crlf_find/$crlf_replace/g;
print $trailer;
__END__