From b8caaefc49b9ff37a641c33244369eb7364a380c Mon Sep 17 00:00:00 2001 From: "Ralf S. Engelschall" Date: Sun, 2 Mar 2003 19:42:40 +0000 Subject: [PATCH] new package: cflow 2.0 (C Source Code Program Flow Analysis) --- cflow/cflow.patch | 18 ++++++++ cflow/cflow.spec | 105 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 123 insertions(+) create mode 100644 cflow/cflow.patch create mode 100644 cflow/cflow.spec diff --git a/cflow/cflow.patch b/cflow/cflow.patch new file mode 100644 index 0000000000..e73103069d --- /dev/null +++ b/cflow/cflow.patch @@ -0,0 +1,18 @@ +--- cflow-2.0/cflow.1 ++++ cflow-2.0/cflow.1 +@@ -1,4 +1,4 @@ +-.TH CFLOW 1 PUBLIC ++.TH CFLOW 1 + .SH NAME + cflow \- print a function call hierarchy + .SH SYNOPSIS +--- cflow-2.0/prcc.c ++++ cflow-2.0/prcc.c +@@ -50,6 +52,7 @@ + static int file_afternl; /* boolean: was previous character a newline? */ + static int file_prevch; /* a single character that was ungotten */ + ++static void show_all_lists(void); + + static char *progname; + diff --git a/cflow/cflow.spec b/cflow/cflow.spec new file mode 100644 index 0000000000..6fed2a4b57 --- /dev/null +++ b/cflow/cflow.spec @@ -0,0 +1,105 @@ +## +## cflow.spec -- OpenPKG RPM Specification +## Copyright (c) 2000-2003 Cable & Wireless Deutschland GmbH +## Copyright (c) 2000-2003 The OpenPKG Project +## Copyright (c) 2000-2003 Ralf S. Engelschall +## +## Permission to use, copy, modify, and distribute this software for +## any purpose with or without fee is hereby granted, provided that +## the above copyright notice and this permission notice appear in all +## copies. +## +## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED 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 AUTHORS AND COPYRIGHT HOLDERS AND THEIR +## 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. +## + +# package versions +%define V_cflow 2.0 +%define V_cflow2vcg 0.4 + +# package information +Name: cflow +Summary: C Source Code Program Flow Analysis +URL: http://www.ibiblio.org/pub/Linux/devel/lang/c/ +Vendor: Andrew Moore et al. +Packager: The OpenPKG Project +Distribution: OpenPKG [EVAL] +Group: Language +License: PD +Version: %{V_cflow} +Release: 20030302 + +# list of sources +Source0: http://www.ibiblio.org/pub/Linux/devel/lang/c/cflow-%{V_cflow}.tar.gz +Source1: http://osdn.dl.sourceforge.net/sourceforge/cflow2vcg/cflow2vcg-%{V_cflow2vcg}.tar.gz +Patch0: cflow.patch + +# build information +Prefix: %{l_prefix} +BuildRoot: %{l_buildroot} +BuildPreReq: OpenPKG, openpkg >= 20030103, make, gcc +PreReq: OpenPKG, openpkg >= 20030103 +AutoReq: no +AutoReqProv: no + +%description + The cflow command reads the given program C source code and attempts + to print a graph of the program's function call hierarchy to the + standard output. + +%prep + %setup0 -q -c + %setup1 -q -T -D -a 1 + %patch0 -p0 + +%build + ( cd cflow-%{V_cflow} + %{l_shtool} subst \ + -e 's;-Wall;;' \ + -e 's;$(PREFIX)/bin/;$(PREFIX)/libexec/cflow/;' \ + Makefile + %{l_make} %{l_mflags} \ + CC="%{l_cc}" \ + OPT="%{l_cflags -O}" \ + PREFIX=%{l_prefix} \ + CFLOW_SHELL=%{l_bash} ) + ( cd cflow2vcg-%{V_cflow2vcg} + CC="%{l_cc}" \ + CFLAGS="%{l_cflags -O}" \ + ./configure + cd src + %{l_make} %{l_mflags} ) + +%install + rm -rf $RPM_BUILD_ROOT + %{l_shtool} mkdir -f -p -m 755 \ + $RPM_BUILD_ROOT%{l_prefix}/bin \ + $RPM_BUILD_ROOT%{l_prefix}/libexec/cflow \ + $RPM_BUILD_ROOT%{l_prefix}/man/man1 + ( cd cflow-%{V_cflow} + %{l_shtool} install -c -m 755 \ + cflow $RPM_BUILD_ROOT%{l_prefix}/bin/ + %{l_shtool} install -c -s -m 755 \ + prcc prcg $RPM_BUILD_ROOT%{l_prefix}/libexec/cflow/ + %{l_shtool} install -c -m 644 \ + cflow.1 $RPM_BUILD_ROOT%{l_prefix}/man/man1/ ) + ( cd cflow2vcg-%{V_cflow2vcg} + %{l_shtool} install -c -m 755 \ + src/cflow2vcg $RPM_BUILD_ROOT%{l_prefix}/bin/ ) + %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} + +%files -f files + +%clean + rm -rf $RPM_BUILD_ROOT +