CScout is a source code analyzer and refactoring browser for
collections of C programs. It can process workspaces of multiple
projects (we define a project as a collection of C source files
that are linked together) mapping the complexity introduced by the
C preprocessor back into the original C source code files. CScout
takes advantage of modern hardware advances (fast processors and
large memory capacities) to analyze C source code beyond the level
of detail and accuracy provided by current compilers and linkers.
The analysis CScout performs takes into account the identifier
scopes introduced by the C preprocessor and the C language proper
scopes and namespaces. CScout has already been applied on projects
ranging from tens of thousands of lines, like the FreeBSD and
Linux kernels, and the Apache web server.
See also: https://github.com/dspinellis/cscout
===> The following configuration options are available for cscout-3.01_1:
EXAMPLES=on: Build and/or install examples
===> Use 'make config' to modify these settings
Remove WWW entries moved into port Makefiles
Commit b7f05445c00f has added WWW entries to port Makefiles based on
WWW: lines in pkg-descr files.
This commit removes the WWW: lines of moved-over URLs from these
pkg-descr files.
Approved by: portmgr (tcberner)
Add WWW entries to port Makefiles
It has been common practice to have one or more URLs at the end of the
ports' pkg-descr files, one per line and prefixed with "WWW:". These
URLs should point at a project website or other relevant resources.
Access to these URLs required processing of the pkg-descr files, and
they have often become stale over time. If more than one such URL was
present in a pkg-descr file, only the first one was tarnsfered into
the port INDEX, but for many ports only the last line did contain the
port specific URL to further information.
There have been several proposals to make a project URL available as
a macro in the ports' Makefiles, over time.
(Only the first 15 lines of the commit message are shown above )
devel: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* "Waitman Gobble" <uzimac@da3m0n8t3r.com>
* <jkoshy@FreeBSD.org>
* Aaron Dalton <aaron@FreeBSD.org>
* Aaron Dalton <aaron@daltons.ca>
* Aaron H. K. Diep <ahkdiep@gmail.com>
* Aaron Hurt <ahurt@anbcs.com>
* Abel Chow <abel_chow@yahoo.com>
* Adam McLaurin
* Adam Saponara <as@php.net>
* Adam Weinberger <adamw@FreeBSD.org>
* Ade Lovett <ade@FreeBSD.org>
(Only the first 15 lines of the commit message are shown above )
Add compiler:c++11-lang to USES to fix build on GCC-based systems:
cc1plus: error: unrecognized command line option "-std=gnu++11"
This port was previously blocked on such systems by compat6x, but
that dependency has been removed.
Approved by: portmgr (tier-2 blanket)
devel/cscout: unexpire and update to 3.01
- Leave out the DOCS option for now because the required conversion
of XML to HTML has not been figured out yet.
- No more dependency on compat6x
- Fetch sources from GitHub
- update license to GPLv3
PR: 242402
Submitted by: Joachim Werner
Approved by: maintainer (dds@)
MFH: 2020Q2
Cleanup DIST* variables.
When appropriate:
- Try to use DISTVERSION{SUF,PRE}FIX
- Replace PORTNAME-PORTVERSION by DISTNAME
- Convert MASTER_SITES to use macros
- Other light cleanup
With hat: portmgr
Sponsored by: Absolight
Move the unexec cmp lines before the files that are compared, so that
during deinstallation the corresponding files will still exist for
comparison.
Found by: itetcu (tinderbox-2.4.3)
This version adds support for function argument refactoring.
Furthermore, a new option controls the depth of function and macro
call graphs, which are now fully browsable in SVG-enabled browsers.
In addition, the web front-end provides support for hand-editing
of files, source code directory browsing, and functionality to
interactively explore the tree of a function's calling and called
functions. Finally, the processing engine includes support for
gcc's include_next and preprocessor conditionals within macro
invocations directives.
Reviewed by: bf <bf2006a at yahoo.com>
Update for CScout version 2.2
Version 2.2 includes numerous fixes and the following enahncements.
- All query results are presented through a page selection interface.
- Identical files in different locations are identified and presented
in the file information page and through the file metrics.
- Identifiers occuring at the same place in identical files are considered
to be the same.
- Facility to display the call path from one function to another.
- New option to display call graphs as GIF images avoiding the need for
an SVG plugin for medium-sized graphs.
- The SQL backend supports four additional tables: STRINGS, COMMENTS,
FILEPOS, FILECOPIES.
- Allow attribute declarations to follow labels (gcc extension).
- Support indirect goto labels (gcc extension).
- Support (ANSI-style) nested function definitions (gcc extension).
(Only the first 15 lines of the commit message are shown above )
Update to release 1.16
Reformat and update pkg-descr
Release 1.16 is associated with the following changes:
- Declarations can be intermixed with statements (C99).
- __typeof can have as its argument an expression
and not only an identifier.
- Support for C99 variable number of arguments preprocessor macros.
- Allow case expression ranges (gcc extension).
- Recognise __atribute__(__unused__) for determining which
identifiers should not be reported as unused (gcc extension).
- Command-line option to generate a wrongly scoped identifier and unused
include file and identifier warning report.
- Separate identifier attribute for enumeration constants.
This allows us stop incorrectly categorizing them as having global
(Only the first 15 lines of the commit message are shown above )
Update CScout to version 1.15
Version 1.15 should be able to process the 4.8-STABLE FreeBSD kernel
using about 1.7G of memory. (Example included)
Approved by: netchild
This is Diomidis Spinellis' (dds@FreeBSD.org) source code analyzer and
refactoring browser for collections of C programs.
I coordinated the creation of the port with him, he will maintain the
port himself in the future.
I think this is the first binary only program (at least in the ports
collection) which supports FreeBSD on alpha, amd64, i386, ia64 and
sparc64.
Reviewed by: dds