aboutsummaryrefslogtreecommitdiff
path: root/development/astyle
diff options
context:
space:
mode:
authorB. Watson <yalhcru@gmail.com>2020-02-07 17:27:49 -0500
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2020-02-08 15:03:27 +0700
commite0dbe8f87d76d7b6668819beb6fd6b4e9fd6ab88 (patch)
tree7081f4db2e145366b693b650bd38b82181b663a0 /development/astyle
parent62cc1495333e42f27edb77ac6b4096d083f4d7e1 (diff)
development/astyle: New maintainer, various enhancements.
Signed-off-by: B. Watson <yalhcru@gmail.com>
Diffstat (limited to 'development/astyle')
-rw-r--r--development/astyle/astyle.1127
-rw-r--r--development/astyle/astyle.SlackBuild91
-rw-r--r--development/astyle/astyle.info4
-rw-r--r--development/astyle/privacy.patch48
4 files changed, 229 insertions, 41 deletions
diff --git a/development/astyle/astyle.1 b/development/astyle/astyle.1
new file mode 100644
index 0000000000000..a97b49835b25c
--- /dev/null
+++ b/development/astyle/astyle.1
@@ -0,0 +1,127 @@
+.TH ASTYLE 1 @DATE@ @VERSION@ "SlackBuilds.org"
+.SH NAME
+astyle \- multi-language indentation and reformatting filters
+
+.SH SYNOPSIS
+.B astyle
+
+\fBastyle\fR [\fIoptions\fR] \fIFile1\fR [\fIFile2\fR] [\fI...\fR]
+
+.SH DESCRIPTION
+\fBArtistic Style\fR (or \fBastyle\fR) is a source code indenter, formatter
+and beautifier, written in C++. It handles the following programming languages:
+
+.RS
+.IP \(bu 3
+C
+.IP \(bu 3
+C++
+.IP \(bu 3
+C++/CLI
+.IP \(bu 3
+Objective-C
+.IP \(bu 3
+C#
+.IP \(bu 3
+Java
+.RE
+
+.SH USAGE
+For the full usage, please refer to the HTML documentation provided with this
+distribution in \fI/usr/doc/astyle\-@VERSION@/html/astyle.html\fR.
+
+.P
+.B astyle
+has \fImany\fR command\-line options.
+For a summary, run "\fBastyle \-\-help | less\fR".
+
+.P
+Please note that when indenting a specific file the newly indented file retains
+the original filename, while a copy of the original file is created, with a
+suffix of ".orig" added to the original filename.
+
+.SH OPTIONS
+
+Here is a brief list of options, copied from the HTML documentation. Most
+of these can appear either as command line options (with \-\- prefixed)
+or option file directives.
+
+.nf
+.eo
+
+Brace Style Options
+
+ default brace style style=allman style=java style=kr
+ style=stroustrup style=whitesmith style=vtk style=ratliff style=gnu
+ style=linux style=horstmann style=1tbs style=google style=mozilla
+ style=pico style=lisp
+
+Tab Options
+
+ default indent indent=spaces indent=tab indent=force-tab
+ --indent=force-tab-x
+
+ Brace Modify Options
+
+ attach-namespaces attach-classes attach-inlines attach-extern-c
+ attach-closing-while
+
+Indentation Options
+
+ indent-classes indent-modifiers indent-switches indent-cases
+ indent-namespaces indent-after-parens indent-continuation
+ indent-labels indent-preproc-block indent-preproc-define
+ indent-preproc-cond indent-col1-comments min-conditional-indent
+ max-continuation-indent
+
+Padding Options
+
+ break-blocks break-blocks=all pad-oper pad-comma pad-paren
+ pad-paren-out pad-first-paren-out pad-paren-in pad-header
+ unpad-paren delete-empty-lines fill-empty-lines align-pointer
+ align-reference
+
+Formatting Options
+
+ break-closing-braces break-elseifs break-one-line-headers add-braces
+ add-one-line-braces remove-braces break-return-type attach-return-type
+ keep-one-line-blocks keep-one-line-statements convert-tabs
+ close-templates remove-comment-prefix max-code-length
+ break-after-logical mode
+
+Objective-C Options
+
+ pad-method-prefix unpad-method-prefix pad-return-type
+ unpad-return-type pad-param-type unpad-param-type align-method-colon
+ pad-method-colon
+
+Other Options
+
+ suffix suffix=none recursive dry-run exclude
+ ignore-exclude-errors ignore-exclude-errors-x errors-to-stdout
+ preserve-date verbose formatted quiet lineend
+
+Command Line Only
+
+ options project ascii version help html html= stdin=
+ stdout=
+
+.ec
+.fi
+
+.SH "SEE ALSO"
+.BR indent(1)
+
+.I http://astyle.sourceforge.net/
+.br
+.I http://www.sourceforge.net/projects/astyle/
+.br
+.I /usr/doc/astyle\-3.1/html/astyle.html
+
+.SH AUTHOR
+Artistic Style was originally written by Tal Davidson <davidsont@bigfoot.com>
+and is currently maintained by Jim Pattee <jimp03@email.com>.
+
+This stub manual page was written by Matteo Cypriani <mcy@lm7.fr>
+for the Debian project, and modified by B. Watson <yalhcru@gmail.com>
+for the SlackBuilds.org project.
diff --git a/development/astyle/astyle.SlackBuild b/development/astyle/astyle.SlackBuild
index a864c0005ffc1..07cf9d9c57838 100644
--- a/development/astyle/astyle.SlackBuild
+++ b/development/astyle/astyle.SlackBuild
@@ -2,17 +2,19 @@
# Slackware build script for Artistic Style
-# Copyright 2017,2018 Nate Bargmann <n0nb@arrl.net>
+# Copyright 2020 B. Watson <yalhcru@gmail.com>
-# Ryan P.C. McQuen | Everett, WA | ryanpcmcquen@member.fsf.org
+# Copyright 2017,2018 Nate Bargmann <email removed>
-# Maintained by Daniel Jordan, daniel.budd.j@gmail.com
+# Ryan P.C. McQuen | Everett, WA | <email removed>
+
+# Formerly maintained by Daniel Jordan <email removed>
# - updated version number
# - added default variable options
# - auto detect ARCH
-# - build and install shared libraries
+# - build and install shared libraries [bkw: say what?]
#
-# Originally by Dugan Chen (dugan_c@fastmail.fm)
+# Originally by Dugan Chen <email removed>
# 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
@@ -32,12 +34,24 @@
# along with this program (most likely, a file named COPYING). If
# not, see <http://www.gnu.org/licenses/>.
+# 20200113 bkw:
+# - Take over maintenance.
+# - Add man page and privacy patch, BUILD=2.
+# - Get rid of "shared" from make command. We weren't installing the
+# shared library anyway, despite the comment above from Daniel
+# Jordan. The only thing that lists astyle as a dependency is ebe,
+# and that's a runtime dep (it executes the astyle command, doesn't
+# link the shared lib). If someone needs the shared lib, I can add
+# it to the build, but for now I'm leaving it alone because the
+# .so isn't versioned (upgrades may cause breakage).
+# - Simplify and tweak the script.
+
PRGNAM=astyle
VERSION=${VERSION:-3.1}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
-SRCPK=astyle_$VERSION\_linux.tar.gz
+TARBALL="astyle_${VERSION}_linux.tar.gz"
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
@@ -72,40 +86,39 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM
-tar -xzvf $CWD/$SRCPK
+tar xvf $CWD/$TARBALL
cd $PRGNAM
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
-
-cd build/gcc
-CFLAGS="$SLKCFLAGS" \
-CXXFLAGS="$SLKCFLAGS" \
-make release shared
-
-inst_pfx=$PKG/usr
-make install prefix=$inst_pfx SYSCONF_PATH=$inst_pfx/doc/$PRGNAM-$VERSION
-
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-cd $TMP/$PRGNAM
-for file in *.md
-do
- cat $file > $PKG/usr/doc/$PRGNAM-$VERSION/$file
-done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/file
-cd $TMP/$PRGNAM/file
-for file in *.ini
-do
- fromdos < $file > $PKG/usr/doc/$PRGNAM-$VERSION/file/$file
-done
-
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+# Don't change this back to template please. Every file in the tarball
+# is +x, and *none* of them need to be.
+find -L . -type d -a -exec chmod 755 {} \+ -o \
+ -type f -a -exec chmod 644 {} \+
+
+DOCDIR=$PKG/usr/doc/$PRGNAM-$VERSION
+
+# This patch (from Debian) prevents the user's browser from trying to
+# load images from sourceforge, when viewing the *local* HTML docs in
+# a browser.
+patch -p1 < $CWD/privacy.patch
+
+CFLAGS="$SLKCFLAGS -Wl,-s" \
+CXXFLAGS="$SLKCFLAGS -Wl,-s" \
+ make -C build/gcc release
+ make -C build/gcc install prefix=$PKG/usr SYSCONF_PATH=$DOCDIR
+
+# Man page borrowed from Debian. It's kind of a placeholder, will
+# expand it someday.
+mkdir -p $PKG/usr/man/man1
+sed -e "s|@VERSION@|$VERSION|" \
+ -e "s|@DATE@|$( date +"%B %e, %Y" )|" \
+ $CWD/$PRGNAM.1 | \
+ gzip -9c > $PKG/usr/man/man1/$PRGNAM.1.gz
+
+cp -a *.md file $DOCDIR
+sed -i 's,\r,,' $DOCDIR/file/*
+
+cat $CWD/$PRGNAM.SlackBuild > $DOCDIR/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/development/astyle/astyle.info b/development/astyle/astyle.info
index 59d580537073f..fe6de06b6017f 100644
--- a/development/astyle/astyle.info
+++ b/development/astyle/astyle.info
@@ -6,5 +6,5 @@ MD5SUM="7712622f62661b1d8cb1062d7fedc390"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Nate Bargmann"
-EMAIL="n0nb@arrl.net"
+MAINTAINER="B. Watson"
+EMAIL="yalhcru@gmail.com"
diff --git a/development/astyle/privacy.patch b/development/astyle/privacy.patch
new file mode 100644
index 0000000000000..6a7a930a038aa
--- /dev/null
+++ b/development/astyle/privacy.patch
@@ -0,0 +1,48 @@
+Description: Remove SourceForge logo privacy breach
+Author: Matteo Cypriani <mcy@lm7.fr>
+Forwarded: not-needed
+Last-Update: 2018-03-18
+--- a/doc/astyle.html
++++ b/doc/astyle.html
+@@ -2465,7 +2465,7 @@
+
+ <p style="margin-left: -0.4in; text-align: center;">
+ <a href="http://sourceforge.net/projects/astyle">
+- <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2319&type=16" alt="" />
++ Artistic Style on SourceForge.net
+ </a></p>
+
+ <p>
+--- a/doc/install.html
++++ b/doc/install.html
+@@ -567,7 +567,7 @@
+
+ <p style="margin-left: -0.4in; text-align: center;">
+ <a href="http://sourceforge.net/projects/astyle">
+- <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2319&type=16" alt="" />
++ Artistic Style on SourceForge.net
+ </a></p>
+
+ <p>
+--- a/doc/news.html
++++ b/doc/news.html
+@@ -731,7 +731,7 @@
+
+ <p style="margin-left: -0.4in; text-align: center;">
+ <a href="http://sourceforge.net/projects/astyle">
+- <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2319&type=16" alt="" /></a></p>
++ Artistic Style on SourceForge.net</a></p>
+
+ <p>
+ &nbsp;</p>
+--- a/doc/notes.html
++++ b/doc/notes.html
+@@ -391,7 +391,7 @@
+
+ <p style="margin-left: -0.4in; text-align: center;">
+ <a href="http://sourceforge.net/projects/astyle">
+- <img src="http://sflogo.sourceforge.net/sflogo.php?group_id=2319&type=16" alt="" /></a></p>
++ Artistic Style on SourceForge.net</a></p>
+
+ <p>
+ &nbsp;</p>