xref: /illumos-gate/usr/src/tools/scripts/wscheck.py (revision 3cac7b0d73edf3f2674ad0f64d1fff3d2e59ae8c)
1#!@TOOLS_PYTHON@ -Es
2#
3# CDDL HEADER START
4#
5# The contents of this file are subject to the terms of the
6# Common Development and Distribution License (the "License").
7# You may not use this file except in compliance with the License.
8#
9# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
10# or http://www.opensolaris.org/os/licensing.
11# See the License for the specific language governing permissions
12# and limitations under the License.
13#
14# When distributing Covered Code, include this CDDL HEADER in each
15# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
16# If applicable, add the following below this CDDL HEADER, with the
17# fields enclosed by brackets "[]" replaced with your own identifying
18# information: Portions Copyright [yyyy] [name of copyright owner]
19#
20# CDDL HEADER END
21#
22
23#
24# Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
25# Copyright 2018 OmniOS Community Edition (OmniOSce) Association.
26#
27
28#
29# Check file for whitespace issues
30# (space tab, trailing space)
31#
32
33import sys, os, io
34
35sys.path.insert(1, os.path.join(os.path.dirname(__file__), "..", "lib",
36                                "python%d.%d" % sys.version_info[:2]))
37
38# Allow running from the source tree, using the modules in the source tree
39sys.path.insert(2, os.path.join(os.path.dirname(__file__), '..'))
40
41from onbld.Checks.WsCheck import wscheck
42
43ret = 0
44for filename in sys.argv[1:]:
45	try:
46		with io.open(filename, encoding='utf-8',
47		    errors='replace') as fh:
48			ret |= wscheck(fh, output=sys.stderr)
49	except IOError as e:
50		sys.stderr.write("failed to open '%s': %s\n" %
51				 (e.filename, e.strerror))
52		continue
53
54sys.exit(ret)
55