From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0089.outbound.protection.outlook.com [104.47.41.89]) by dpdk.org (Postfix) with ESMTP id 1FC9B2BB1 for ; Fri, 14 Apr 2017 14:44:54 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=qfzzIJ3bxrAv4lXgO939/xLGkeEO8IKTKTCglD6tHCY=; b=hGPANCumeIk6EzFzn8FGlmmrEyTzBm8E640EMsjS0OT/5aDTA5S9kl5+SP93Mvi/2ma7XbDonfgJJk7pCDVwGh6PEdauuMBz1EvIcd3Nv/yqtvQzFKfHnhOUI0yWN7SqvfsYf10TarBD5fh30bkRhd3cgVnWy6+iI8BEsiqeFNI= Authentication-Results: dpdk.org; dkim=none (message not signed) header.d=none;dpdk.org; dmarc=none action=none header.from=caviumnetworks.com; Received: from jerin (111.93.218.67) by CY1PR0701MB1725.namprd07.prod.outlook.com (10.163.21.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1034.10; Fri, 14 Apr 2017 12:44:49 +0000 Date: Fri, 14 Apr 2017 18:14:31 +0530 From: Jerin Jacob To: dev@dpdk.org Cc: thomas.monjalon@6wind.com Message-ID: <20170414124429.GA16904@jerin> References: <1489920738-16247-1-git-send-email-jerin.jacob@caviumnetworks.com> <1490171404-16828-1-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1490171404-16828-1-git-send-email-jerin.jacob@caviumnetworks.com> User-Agent: Mutt/1.8.1 (2017-04-11) X-Originating-IP: [111.93.218.67] X-ClientProxiedBy: BM1PR01CA0002.INDPRD01.PROD.OUTLOOK.COM (10.163.198.137) To CY1PR0701MB1725.namprd07.prod.outlook.com (10.163.21.14) X-MS-Office365-Filtering-Correlation-Id: 3e1181f8-061b-4e7e-932c-08d483340afe X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(201703131423075)(201703031133081); SRVR:CY1PR0701MB1725; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 3:l94ukLtEhYffQg4Ig3uKFLEVKo2xhwOhEMD6CKy7UThy1P5mcD32DTzIaSxzAT+e+Hnel6gHJ3pqh8RRa/Oi5QQ02DFLQTWY78l4XrjWSfNMlHnuvGYYFfR0iy+hQECH714o8qcRNwxtwgg0IhqLjMiToO6uP56095eHSFGA9AuaSFX+F8odFAL/D2F5beO74gpqfxsJEAXYKzrmtzUBGPrwy+j9TXfbxcuzTqrmOxb+dht5xohGB+zpEn5eEtol+/KjUL3ySuGtyB3ls2neIJWLRBJaAFPNbZ1y4/6pMIJupvgQndzbHUkfJR/8hc90DcxHU7YeUYjeRe0aR4Pf+w==; 25:CDtaMxOnldzS4aQw/yHtBoRKE+gixAIvJu6JLV5TvX0hfAN09dNAETssBPPTElMQxJqzddBZoBlF1WB5PEnEO3083c+jQSrTjQaaue2IdJJW82MPQsFbapfHzKU/TrflXKTMNQU/2JTLhlP3/3GC+nWuhFLO5P/6/D2xJTZDpdc+PoyP/k3PpArnW+TFHUHruEASz4u4koWQtEdUyEAxIY/l5FaFYszYW+DgmbQ2+8rQNSuvpUXNONPqcQDXWHmu5OCV3rBhSX62R3gGh6J+LjppbenDIwaFSzNFFaMPOkOyyNcvS2V95QjAG/ZfdURZq3Dbxt8I8vmYwRvjhZGn0HX/cenZ1ifWFbWWzVdNlXDm0PXQ5e6+yTBqMk8nCPH6Jf7PzWdZ4FZYQX12dZFIKiUJ8WUTHgRvpYuZnFaWK0yRq/H2nGs8X7+RXkP8wYMc32WK3Clo2i1BghjEVyAKpQ== X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 31:7mOqFh5MKeOhOLCOvsVKycsA/l23DtIZMe7UTqPLWV3GsEWSES/syFV8ECvheqM7UO7QjMxQccZ3+KNiZdzDrdy24VzwgzGiF/6QdUd6tlQyjWx02EjY3ReGKLfBDtqpWewTYe5Sm8T1r53BCMk0KN0MrCqJkiMatfae7MyHWKirIXxxpogpBMxBKW7HEmh4jSuZbXmhw+GInKPcM1QoI7RsqPoZwexiy+K9MZ1kLOQTC7xHsJry8JYSvSLQA2sCsWjhl/Cla0Y5frhIl5nrDQ==; 20:6gYuDgIQHl5oEGO1cNrslWOkABLRWhfLS+EZQx3MB14Hnrcld7WZ9TIFv7h/Ge/Lbvv0Xi99mz6aHMW03xkPoWLBV+H9EbKe6NtQkm4H/r+k2dzlufhEtCVLh9wjWClGhES5h3l8WKiISHLrIuhpnHGxtVvc6QcASXWGaqH1Vp/fP0LcAmIYQSwPOLn4BsrwbHVoQpBJT+CJTtNnD4uBPKpNIv0Rvo4vkwtubMCd5MccBkp6R7BkUOQ/ZhW2AwVgI7idbWdbSntiT9Jd6MFobe+TtVBMRWk7RfNaSn+5Smy763zlxk3Z1cSkW8LHZoxoZVG5lM52gk00ajJeprfyx3mwiYflgcw91lJsE6yN7W9yEgllwmnwOhlRxhAgHqzDxuf1jtoKpXgnrVCtXLN5chriMiUKcsj7fqboOXAlHgmrs+KIsZyiKhHGnAv1PKjybKF6t0+cmokJBqiZ1MfaNba24ohGFGM7jepWDhlYaZIrBI7pPRjm+TrososBKR0fJRNcvJoNseh/T2iP1C9Pg80mE91B9x5jSVHWw0eetNG8jw2dsrP5zEEkcoNQRjf7snC+TCZh1Odab8HpljHzXl61SHSdqqa92+vjk9osen0= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(228905959029699); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(601004)(2401047)(5005006)(8121501046)(93006095)(3002001)(10201501046)(6041248)(20161123562025)(20161123564025)(20161123560025)(201703131423075)(201702281528075)(201703061421075)(20161123555025)(6072148); SRVR:CY1PR0701MB1725; BCL:0; PCL:0; RULEID:; SRVR:CY1PR0701MB1725; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 4:6Ige/1SFRWKYAdAtJOGB4DtJBotd0X5z8PAVurOEEiyBVvLjsbFinyYmOeSPmAO49JGCp3YQe1vgb7Jb+qnMAXTB1kNCO3I3vUHrquGld2QenNfgikODBiSTDRdVauyVR4gsIUJo3HEzE3E11DaBuphxCdAHGRrYhqNlvz2mDXK5wIku06kKM27cccSS4OEf2wHt6s2GvoWpD1Fa3F5FOh7tg0+3eWIIwo/jUruv7d19x+mQ1z/pH+56yW7B+rmBD47i3DcpCG8rcjC/hwGT+VJ5ArDmYiWMkF7nJxsxmzgmXGtw7yyvbhFBfIgMxgmYQS9BanVbLSwHjPrkTSIhIFHoPrPNKYhL1M7H1zw/IQ9Gm2QfpxtwH7LOlx5iPpr/fqnQ0cnzQEN8kySWjD4WBMwqG6lmqnfDMXQWeWdNb3l0njiPc32jSdJeODEPF/o55MvTzuR8eLseSniv2g2+isjTU+OPLLTFOcn5P/sXrDyxtdudZSCp7nEIovZ/N8U9SQQ3rd0Yuf66lKPpdmURsAG88TfHZoj2Y/DeJUGCf8v8w3OfpMKJdyR81azcTqetaE+27z0EpPnxLQfJHCV/53nErMsplymFFHi+/UzUzsUPZbi/vhBMlWpjG8+xyuO7Byha01a1FKgQQBDeXnEAu400TBXqBYNtmQ5RSPNl1LTr6B7ZYsWKKYf1atvI2ZQEC6jl7NyGyMBKsfm3JfuJYvIF5tKpYVzxTTWoSDBiYyOmkJ+Wq1JhG0g0UDQw/NBA X-Forefront-PRVS: 02778BF158 X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(979002)(6009001)(39450400003)(39850400002)(39400400002)(39840400002)(39410400002)(13464003)(76176999)(50986999)(1076002)(23726003)(110136004)(6916009)(4326008)(42186005)(8676002)(81166006)(54356999)(33656002)(68736007)(229853002)(5009440100003)(66066001)(2361001)(2906002)(189998001)(2950100002)(25786009)(6116002)(9686003)(42882006)(38730400002)(3846002)(2351001)(4001350100001)(55016002)(305945005)(6246003)(83506001)(33716001)(6496005)(53936002)(6666003)(50466002)(47776003)(5660300001)(7736002)(18370500001)(969003)(989001)(999001)(1009001)(1019001); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0701MB1725; H:jerin; FPR:; SPF:None; MLV:ovr; PTR:InfoNoRecords; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0701MB1725; 23:TzoKP6tg3aSW6Q/1zZRcU+41gWbWDqMffFkvvkR?= =?us-ascii?Q?mBwevkgBxYBlLgpDNsutn81AUCE8S14nZGnqi+Z/DM22KShTi61+t+59HQFK?= =?us-ascii?Q?WTi2UxYbxPc8vZep1tupV4H/KXu6fG8Idj27zKD96kR8eszceRp8kuAR+ciW?= =?us-ascii?Q?rf7z7Mm4/Dh6jENKuBrYWfxsTqPswBDT/cDAY1ZHal9Z0JohmE3E/Y+7kC3t?= =?us-ascii?Q?vbdqq7le7mEAqunC5GZ8LCpE4rG9vVoj3DRhn1dh0bti2kfEThI7LckPBCU6?= =?us-ascii?Q?uEi2wgS2vfkHKTq1dXqnQYq/n1bu5RKvnTdzlUd4ZVVqEaaTW265lLW7fd2M?= =?us-ascii?Q?Vse5pi2jSB0T2sw4Biwb9f+Fa7HYGPJFXga+sr365P/i+UUcr4/SLi+0gztx?= =?us-ascii?Q?iNnHYyUq6+3Pz20ZuTC7VfgWw6kF3vI2axks86eQEIWGdZGDMZg3vEEqF9ea?= =?us-ascii?Q?EHgjMskkAax16kAyHna1SYYBpTGLYYV5P/Mjw/AY1fo8U/xGXNbVfXIQ2/E4?= =?us-ascii?Q?TJFYx75cRuK6KcZvmUOPGt8pDdmzIncUt0xGoaBhuNIj5DNz92NuZbRIhOz4?= =?us-ascii?Q?b0RtENhA0p6gpk0ZeM0VMU/OeeoW5LdxSaJx9iVX67Ejl7P07JD2kgYkZwaL?= =?us-ascii?Q?SB+KtBTegdthTBpYDuAkN356HIUBSAbomTfTzB1Qo0Vo8EHiVsjhchA+Gjkg?= =?us-ascii?Q?ForaBV3Rx5H7CD82sIqmmdWFGvaAvWk/ALIBSaZgAxqmWktybb8uAoXK/6tW?= =?us-ascii?Q?L65ppBqZgz8NiOYz+oMmyhZMyyfxNjh4JUufVtaIrqM8lrLfvOpFgTCLiIhq?= =?us-ascii?Q?gDjvdNjCH6C3w+yEJF24thFKZ4nYLiPdhOONPAS01nUI+ud81VwWWEtr6TMm?= =?us-ascii?Q?w+G9OdN4NU4O5JD1BKF/HEuCKgLJckuarI99K6skG0I+4lA5bidZusWbBc8u?= =?us-ascii?Q?jd3hy3lCYT/ZQQ1e3LIZVtY0+VD/o5LoUjYkC+usiZn52hhGebfeWQ7sG3Kt?= =?us-ascii?Q?dl0VSPbZ0LZ+QxU3fw4shFxFY6gxG8whnXLzYIYIbDoMMguwYjrKZ+CybKoC?= =?us-ascii?Q?CZgd0Ql2zjnXi/EeIjmyUP9LsxRXaUvPYxg4XuvlRPeMIOwTgbLyLY3QPpSN?= =?us-ascii?Q?KEOroIxzy+0gdobbgKcQ873Qq2UR1SYuqHWoeFhHPZQ3TuiMXOUBkCGINYPA?= =?us-ascii?Q?WqPnsfCymPCdyiguqnbqq6qXR4L3Hm+1iCPrPUWPOuOUQpWfcQvRerbSXhOw?= =?us-ascii?Q?Tv982TB6CbkFHRs9HPvONLZb9KWdwH0hxhfhGng88hzmTm1I+BJlS+rBhOwJ?= =?us-ascii?Q?pohH2jDhNAsurrIkuLvXVINU=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 6:q6wERaNN6GjUIkqbodVsK4ONuALXudiJDyftGWCj1wAtDjdj8hjARt2DKfH9n4zNgmZ0y8/xuyYBhH9C+E+4Md1LgS9bbxJCTQnd7hmGWa7VLUMTsz0QHYUqe5DWK053RKsHkpxzm+/SIF3IbpCGnbLR3DE9Ca3oss+eSjugAC4Xplgb3wwZknzUadPiq87r9iBmLrj8bsbbs1qRrcEArQsKJTAGhH1FZT04zTvP/u+w/LXHrbYOcyvMBcRrGqtxSra6KKpK599vd+hebl/NqitVyrExp+I7BUA72feXSITUttwAp7qOh2QNYjCWgrpdtjiM3CtfR6asys/ZouzrgLTv6y6RJO4LuafIBGnfLZFSOSuwG4sDcYGOafPbFMzf/bRCv6f8zLVgEBwbxkhPwcEYKfMECsJHdpDPYXpib0RtBy0WrV03IQGZHrjhXp//vc7cjNINX7jA8NL0bz8xvA==; 5:28/oMEoBu9kMjQyhMQi0rA0+JWzRkQ2b5IKLtMeVlTcjlB6v1X3aSFl+l3nqVfB9JZ+aYQyC3Iqy2beELXNXdoWS1JtVy6DEB3ifWP82FY1KMhrez/cO6VCRlWGhWvNiJDt1aAEpoSpV8TK7S4RF8Q==; 24:HxxDbfuC4tETra6+05wAAtot4iFASbCw9mCZxA3gtq6dwdyWdYGlAeaUIkbsObcWwz9r5+8oqFTtaWJa5hb6RSAsMFE93o1Mtp9xoQNdp6Q= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; CY1PR0701MB1725; 7:eaZaGGLl7RKtOtAdENA6LwMZFwfFP7921XvOoljWqK1LdcOPZN2MKxmnvOFmLoEwF5cvxd7qN0A/zWeMtwXiWNXNr8SJfXkvbfLqUZTLZ72nVIXyOlxGDm6Lhu5sBNZfVuN64rAcTsJawe3xMW1lBYz+8G53xU/Bw5hed4mSBJvrBaDx84oYKFPgd4KqcgmXIf4m8dbSkPFyk7iOfib+j545URfynL6Lh2eRhQXOuShFV75TtRi9EJOa6mD6NHQa09mxmhLZCM+sms0Jm2tol24Z6IAI4vpWSRCY4WAufUYar4EoZXOYWNEucJ+b7igyGkJ1HUV1oKUP7phX9VCxeg== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Apr 2017 12:44:49.1919 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0701MB1725 Subject: Re: [dpdk-dev] [PATCH v5] devtools: add tags and cscope index file generation support X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 14 Apr 2017 12:44:55 -0000 -----Original Message----- > Date: Wed, 22 Mar 2017 14:00:04 +0530 > From: Jerin Jacob > To: dev@dpdk.org > Cc: thomas.monjalon@6wind.com, Jerin Jacob > Subject: [dpdk-dev] [PATCH v5] devtools: add tags and cscope index file > generation support > X-Mailer: git-send-email 2.5.5 > > This script generates cscope, gtags, and tags index files based on > EAL environment(architecture and OS(linux/bsd)). > > Selection of the architecture and OS environment is based on dpdk > configuration target(T=).If EAL environment(T=) is not specified, > the script generates tag files based on available source code. > > Usage: make tags|cscope|gtags|etags [T=config] > > example usage: > make cscope > make tags T=x86_64-native-linuxapp-gcc > make gtags T=arm64-armv8a-linuxapp-gcc > > Signed-off-by: Jerin Jacob > Reviewed-by: Yuanhan Liu > Reviewed-by: Ferruh Yigit Ping. > --- > v5: > - Added cscope,tags,gtags,etags makefile targets (Cristian) > > v4: > - Accommodate the latest "test" directory rework change in master > > v3: > - Added etags target for Emacs(John) > - EAL environment(config) is optional now(Thomas) > - Changed bash shebang to /bin/sh (Thomas) > - getopts based -v and -h option (Thomas) > - used $() instead of backquotes (Thomas) > - Removed "make" based frontend to the script to make it inline with > other devtools scripts in DPDK (Jerin) > > v2: > - Moved tag.sh to devtools from scripts > - Rebased to master > --- > .gitignore | 9 ++ > devtools/build-tags.sh | 271 +++++++++++++++++++++++++++++++++++++++++++++++++ > mk/rte.sdkroot.mk | 8 ++ > 3 files changed, 288 insertions(+) > create mode 100755 devtools/build-tags.sh > > diff --git a/.gitignore b/.gitignore > index a722abe..7eade38 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -1 +1,10 @@ > doc/guides/nics/overview_table.txt > +cscope.out.po > +cscope.out.in > +cscope.out > +cscope.files > +GTAGS > +GPATH > +GRTAGS > +tags > +TAGS > diff --git a/devtools/build-tags.sh b/devtools/build-tags.sh > new file mode 100755 > index 0000000..ca5317f > --- /dev/null > +++ b/devtools/build-tags.sh > @@ -0,0 +1,271 @@ > +#!/bin/sh -e > +# Generate tags or gtags or cscope or etags files > +# > +# BSD LICENSE > +# > +# Copyright 2017 Cavium Networks > +# > +# Redistribution and use in source and binary forms, with or without > +# modification, are permitted provided that the following conditions > +# are met: > +# > +# * Redistributions of source code must retain the above copyright > +# notice, this list of conditions and the following disclaimer. > +# * Redistributions in binary form must reproduce the above copyright > +# notice, this list of conditions and the following disclaimer in > +# the documentation and/or other materials provided with the > +# distribution. > +# * Neither the name of Cavium networks nor the names of its > +# contributors may be used to endorse or promote products derived > +# from this software without specific prior written permission. > +# > +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS > +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT > +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR > +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT > +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, > +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT > +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, > +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY > +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT > +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE > +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. > + > +verbose=false > +linuxapp=false > +bsdapp=false > +x86_64=false > +arm=false > +arm64=false > +ia_32=false > +ppc_64=false > + > +print_usage() > +{ > + echo "Usage: $(basename $0) [-h] [-v] tags|cscope|gtags|etags [config]" > + echo "Valid configs are:" > + make showconfigs | sed 's,^,\t,' > +} > + > +while getopts hv ARG ; do > + case $ARG in > + v ) verbose=true ;; > + h ) print_usage; exit 0 ;; > + ? ) print_usage; exit 1 ;; > + esac > +done > +shift $(($OPTIND - 1)) > + > +#ignore version control files > +ignore="( -name .svn -o -name CVS -o -name .hg -o -name .git ) -prune -o" > + > +source_dirs="test app buildtools drivers examples lib" > + > +skip_bsd="( -name bsdapp ) -prune -o" > +skip_linux="( -name linuxapp ) -prune -o" > +skip_arch="( -name arch ) -prune -o" > +skip_sse="( -name *_sse*.[chS] ) -prune -o" > +skip_avx="( -name *_avx*.[chS] ) -prune -o" > +skip_neon="( -name *_neon*.[chS] ) -prune -o" > +skip_altivec="( -name *_altivec*.[chS] ) -prune -o" > +skip_arm64="( -name *arm64*.[chS] ) -prune -o" > +skip_x86="( -name *x86*.[chS] ) -prune -o" > +skip_32b_files="( -name *_32.h ) -prune -o" > +skip_64b_files="( -name *_64.h ) -prune -o" > + > +skiplist="$skip_bsd $skip_linux $skip_arch $skip_sse $skip_avx \ > + $skip_neon $skip_altivec $skip_x86 $skip_arm64" > + > +find_sources() > +{ > + find $1 $ignore $3 -name $2 -not -type l -print > +} > + > +common_sources() > +{ > + find_sources "$source_dirs" '*.[chS]' "$skiplist" > +} > + > +linuxapp_sources() > +{ > + find_sources "lib/librte_eal/linuxapp" '*.[chS]' > +} > + > +bsdapp_sources() > +{ > + find_sources "lib/librte_eal/bsdapp" '*.[chS]' > +} > + > +arm_common() > +{ > + find_sources "lib/librte_eal/common/arch/arm" '*.[chS]' > + find_sources "$source_dirs" '*neon*.[chS]' > +} > + > +arm_sources() > +{ > + arm_common > + find_sources "lib/librte_eal/common/include/arch/arm" '*.[chS]' \ > + "$skip_64b_files" > +} > + > +arm64_sources() > +{ > + arm_common > + find_sources "lib/librte_eal/common/include/arch/arm" '*.[chS]' \ > + "$skip_32b_files" > + find_sources "$source_dirs" '*arm64.[chS]' > +} > + > +ia_common() > +{ > + find_sources "lib/librte_eal/common/arch/x86" '*.[chS]' > + > + find_sources "examples/performance-thread/common/arch/x86" '*.[chS]' > + find_sources "$source_dirs" '*_sse*.[chS]' > + find_sources "$source_dirs" '*_avx*.[chS]' > + find_sources "$source_dirs" '*x86.[chS]' > +} > + > +i686_sources() > +{ > + ia_common > + find_sources "lib/librte_eal/common/include/arch/x86" '*.[chS]' \ > + "$skip_64b_files" > +} > + > +x86_64_sources() > +{ > + ia_common > + find_sources "lib/librte_eal/common/include/arch/x86" '*.[chS]' \ > + "$skip_32b_files" > +} > + > +ppc64_sources() > +{ > + find_sources "lib/librte_eal/common/arch/ppc_64" '*.[chS]' > + find_sources "lib/librte_eal/common/include/arch/ppc_64" '*.[chS]' > + find_sources "$source_dirs" '*altivec*.[chS]' > +} > + > +config_file() > +{ > + if [ -f $RTE_SDK/$RTE_TARGET/include/rte_config.h ]; then > + ls $RTE_SDK/$RTE_TARGET/include/rte_config.h > + fi > +} > + > +check_valid_config() > +{ > + cfgfound=false > + allconfigs=$(make showconfigs) > + for cfg in $allconfigs > + do > + if [ "$cfg" = "$1" ] ; then > + cfgfound=true > + fi > + done > + $cfgfound || echo "Invalid config: $1" > + $cfgfound || print_usage > + $cfgfound || exit 0 > +} > + > +if [ -n "$2" ]; then > + check_valid_config $2 > + > + if [ $(echo $2 | grep -c "linuxapp-") -gt 0 ]; then > + linuxapp=true > + fi > + > + if [ $(echo $2 | grep -c "bsdapp-") -gt 0 ]; then > + bsdapp=true > + fi > + > + if [ $(echo $2 | grep -c "x86_64-") -gt 0 ]; then > + x86_64=true > + fi > + > + if [ $(echo $2 | grep -c "i686-") -gt 0 ]; then > + ia_32=true > + fi > + > + if [ $(echo $2 | grep -c "x32-") -gt 0 ]; then > + ia_32=true > + fi > + > + if [ $(echo $2 | grep -c "arm-") -gt 0 ]; then > + arm=true > + fi > + > + if [ $(echo $2 | grep -c "arm64-") -gt 0 ]; then > + arm64=true > + fi > + > + if [ $(echo $2 | grep -c "ppc_64-") -gt 0 ]; then > + ppc_64=true > + fi > + > +else > + linuxapp=true > + bsdapp=true > + x86_64=true > + arm=true > + arm64=true > + ia_32=true > + ppc_64=true > +fi > + > +all_sources() > +{ > + common_sources > + $linuxapp && linuxapp_sources > + $bsdapp && bsdapp_sources > + $x86_64 && x86_64_sources > + $ia_32 && i686_sources > + $arm && arm_sources > + $arm64 && arm64_sources > + $ppc_64 && ppc64_sources > + config_file > +} > + > +show_flags() > +{ > + $verbose && echo "mode: $1" > + $verbose && echo "config: $2" > + $verbose && echo "linuxapp: $linuxapp" > + $verbose && echo "bsdapp: $bsdapp" > + $verbose && echo "ia_32: $ia_32" > + $verbose && echo "x86_64: $x86_64" > + $verbose && echo "arm: $arm" > + $verbose && echo "arm64: $arm64" > + $verbose && echo "ppc_64: $ppc_64" > + if [ -f $RTE_SDK/$RTE_TARGET/include/rte_config.h ]; then > + $verbose && echo "target: $RTE_SDK/$RTE_TARGET" > + fi > +} > + > +case "$1" in > + "cscope") > + show_flags $1 $2 > + all_sources > cscope.files > + cscope -q -b -f cscope.out > + ;; > + "gtags") > + show_flags $1 $2 > + all_sources | gtags -i -f - > + ;; > + "tags") > + show_flags $1 $2 > + rm -f tags > + all_sources | xargs ctags -a > + ;; > + "etags") > + show_flags $1 $2 > + rm -f TAGS > + all_sources | xargs etags -a > + ;; > + *) > + echo "Invalid mode: $1" > + print_usage > + ;; > +esac > diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk > index 7598bde..6f9bfc5 100644 > --- a/mk/rte.sdkroot.mk > +++ b/mk/rte.sdkroot.mk > @@ -92,6 +92,14 @@ default: all > config showconfigs showversion showversionum: > $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdkconfig.mk $@ > > +.PHONY: cscope gtags tags etags > +cscope gtags tags etags: > +ifdef T > + $(Q)$(RTE_SDK)/devtools/build-tags.sh $@ ${T} > +else > + $(Q)$(RTE_SDK)/devtools/build-tags.sh $@ > +endif > + > .PHONY: test test-basic test-fast test-ring test-mempool test-perf coverage > test test-basic test-fast test-ring test-mempool test-perf coverage: > $(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdktest.mk $@ > -- > 2.5.5 >