mirror of
https://fuchsia.googlesource.com/third_party/pigweed.googlesource.com/pigweed/pigweed
synced 2024-09-21 14:16:26 +00:00
e2016763a8
This change adds a size reporting module named pw_bloat. The module uses Bloaty McBloatface to generate size report cards for binaries. It provides a GN template which defines an action to perform a size diff on a group of binary targets. Example output: simple_bloat ──────────── ┌────────────────┬──────────────┬────────┬───────┬───────┐ │ Label │ Segment │ Before │ Delta │ After │ ├════════════════┼══════════════┼════════┼═══════┼═══════┤ │ Add a loop │ EXAMPLE CODE │ 429 │ +32 │ 461 │ │ │ EXAMPLE RAM │ 576 │ +8 │ 584 │ ├────────────────┼──────────────┼────────┼───────┼───────┤ │ Add a function │ EXAMPLE CODE │ 429 │ +16 │ 445 │ │ │ EXAMPLE RAM │ 576 │ +8 │ 584 │ └────────────────┴──────────────┴────────┴───────┴───────┘ Change-Id: I14b3d383ec450bc6d017bf5d0111e266b0a3c368
35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
# Copyright 2019 The Pigweed Authors
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
|
|
# use this file except in compliance with the License. You may obtain a copy of
|
|
# the License at
|
|
#
|
|
# https://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations under
|
|
# the License.
|
|
|
|
"""pw_bloat"""
|
|
|
|
import unittest
|
|
import setuptools
|
|
|
|
|
|
def test_suite():
|
|
"""Test suite for pw_bloat module."""
|
|
return unittest.TestLoader().discover('./', pattern='*_test.py')
|
|
|
|
|
|
setuptools.setup(
|
|
name='pw_bloat',
|
|
version='0.0.1',
|
|
author='Pigweed Authors',
|
|
author_email='pigweed-developers@googlegroups.com',
|
|
description='Tools for generating binary size report cards',
|
|
packages=setuptools.find_packages(),
|
|
test_suite='setup.test_suite',
|
|
)
|