Mon Oct 3 01:00:27 2016 UTC ()
Import c11(1) - a cc -std=c11 wrapper

This script is similar to c89(1) and c99(1).

It's a NetBSD extension. The c89(1) and c99(1) scripts are part of POSIX.


(kamil)
diff -r1.2062 -r1.2063 src/distrib/sets/lists/comp/mi
diff -r1.225 -r1.226 src/usr.bin/Makefile
diff -r0 -r1.1 src/usr.bin/c11/Makefile
diff -r0 -r1.1 src/usr.bin/c11/c11.1
diff -r0 -r1.1 src/usr.bin/c11/c11.sh

cvs diff -r1.2062 -r1.2063 src/distrib/sets/lists/comp/mi (expand / switch to context diff)
--- src/distrib/sets/lists/comp/mi 2016/10/02 17:19:00 1.2062
+++ src/distrib/sets/lists/comp/mi 2016/10/03 01:00:27 1.2063
@@ -1,4 +1,4 @@
-#	$NetBSD: mi,v 1.2062 2016/10/02 17:19:00 kamil Exp $
+#	$NetBSD: mi,v 1.2063 2016/10/03 01:00:27 kamil Exp $
 #
 # Note: don't delete entries from here - mark them as "obsolete" instead.
 ./etc/mtree/set.comp				comp-sys-root
@@ -9,6 +9,7 @@
 ./usr/bin/atf-compile				comp-obsolete		obsolete
 ./usr/bin/c++					comp-cxx-bin		gcccmds
 ./usr/bin/c++filt				comp-cxx-bin		binutils
+./usr/bin/c11					comp-c-bin
 ./usr/bin/c89					comp-c-bin
 ./usr/bin/c99					comp-c-bin
 ./usr/bin/cc					comp-c-bin		gcccmds
@@ -3932,6 +3933,7 @@
 ./usr/share/man/cat1/asa.0			comp-fortran-catman	.cat
 ./usr/share/man/cat1/c++.0			comp-cxx-catman		gcccmds,.cat
 ./usr/share/man/cat1/c++filt.0			comp-cxx-catman		binutils,.cat
+./usr/share/man/cat1/c11.0			comp-c-catman		.cat
 ./usr/share/man/cat1/c89.0			comp-c-catman		.cat
 ./usr/share/man/cat1/c99.0			comp-c-catman		.cat
 ./usr/share/man/cat1/cc.0			comp-c-catman		gcccmds,.cat
@@ -11305,6 +11307,7 @@
 ./usr/share/man/html1/asa.html			comp-fortran-htmlman	html
 ./usr/share/man/html1/c++.html			comp-cxx-htmlman	gcccmds,html
 ./usr/share/man/html1/c++filt.html		comp-cxx-htmlman	binutils,html
+./usr/share/man/html1/c11.html			comp-c-htmlman		html
 ./usr/share/man/html1/c89.html			comp-c-htmlman		html
 ./usr/share/man/html1/c99.html			comp-c-htmlman		html
 ./usr/share/man/html1/cc.html			comp-c-htmlman		gcccmds,html
@@ -18417,6 +18420,7 @@
 ./usr/share/man/man1/asa.1			comp-fortran-man	.man
 ./usr/share/man/man1/c++.1			comp-cxx-man		gcccmds,.man
 ./usr/share/man/man1/c++filt.1			comp-cxx-man		binutils,.man
+./usr/share/man/man1/c11.1			comp-c-man		.man
 ./usr/share/man/man1/c89.1			comp-c-man		.man
 ./usr/share/man/man1/c99.1			comp-c-man		.man
 ./usr/share/man/man1/cc.1			comp-c-man		gcccmds,.man

cvs diff -r1.225 -r1.226 src/usr.bin/Makefile (expand / switch to context diff)
--- src/usr.bin/Makefile 2016/06/04 15:27:11 1.225
+++ src/usr.bin/Makefile 2016/10/03 01:00:27 1.226
@@ -1,11 +1,11 @@
-#	$NetBSD: Makefile,v 1.225 2016/06/04 15:27:11 agc Exp $
+#	$NetBSD: Makefile,v 1.226 2016/10/03 01:00:27 kamil Exp $
 #	from: @(#)Makefile	8.3 (Berkeley) 1/7/94
 
 .include <bsd.own.mk>
 
 SUBDIR= apply asa at audio audiocfg \
 	banner basename biff bthset btkey btpin \
-	bzip2 bzip2recover c89 c99 cal calendar cap_mkdb cdplay \
+	bzip2 bzip2recover c11 c89 c99 cal calendar cap_mkdb cdplay \
 	checknr chflags chpass cksum cmp cleantags col colcrt colrm \
 	column comm compress config crunch csplit ctags cut cvslatest \
 	deroff db dirname du \

File Added: src/usr.bin/c11/Makefile
#	$NetBSD: Makefile,v 1.1 2016/10/03 01:00:27 kamil Exp $

SCRIPTS=       c11.sh
SCRIPTSDIR=    /usr/bin

MAN=		c11.1

.include <bsd.prog.mk>

File Added: src/usr.bin/c11/c11.1
.\"	$NetBSD: c11.1,v 1.1 2016/10/03 01:00:27 kamil Exp $
.\"
.\" Copyright (c) 1999-2016 The NetBSD Foundation, Inc.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. 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.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. 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 FOUNDATION 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.
.\"
.Dd October 2, 2016
.Dt C11 1
.Os
.Sh NAME
.Nm c11
.Nd ANSI (2011) C compiler
.Sh SYNOPSIS
.Nm
.Op Fl pedantic
.Op Fl pedantic-errors
.Op Fl D_ANSI_SOURCE
.Op options ...
.Sh DESCRIPTION
Calls the C compiler (cc) with the given
.Ar options ,
using a C language environment compatible with the
.St -isoC-2011
specification.
.Pp
This includes
alignment specification (
.Ar _Alignas
specifier,
.Ar _Alignof operator ) ,
the
.Ar _Noreturn
function specifier,
type-generic expressions using the
.Ar _Generic
keyword,
multi-threading support,
improved unicode handling,
anonymous structures and unions,
static assertions,
exclusive create-and-open mode for
.Xr fopen 3 ,
the
.Xr quick_exit 3
function performing minimal cleanup,
macros for construction of complex values.
.Pp
The following options are available:
.Bl -tag -width "-pedantic-errorsxx"
.It Fl pedantic
Issue extra warnings defined by ANSI for use of non-ANSI features.
.It Fl pedantic-errors
Issue errors instead of warnings that normally would be presented by
.Fl pedantic .
.It Fl D_ANSI_SOURCE
Tell the system header file set to use an ANSI-conformant "clean" namespace.
.El
.Sh SEE ALSO
.Xr cc 1
.Sh STANDARDS
.Nm
is
.Nx
extension.
.Sh HISTORY
.Nm
first appeared in
.Nx 8.0 .
.Sh BUGS
Since
.Nm
is a shell wrapper script to
.Ar cc ,
compile errors are prefixed by "cc:".

File Added: src/usr.bin/c11/c11.sh
#!/bin/sh
exec /usr/bin/cc -std=c11 "$@"