summaryrefslogtreecommitdiff
path: root/usr/src/tools/ctf/scripts
diff options
context:
space:
mode:
authorGarrett D'Amore <garrett@damore.org>2014-12-08 06:19:08 -0800
committerGarrett D'Amore <garrett@damore.org>2015-04-05 10:36:29 -0700
commit105958d7eca6f896fb8caab1f9777157eb0a352c (patch)
treef85b065d2c09e3cd33ffe88d822f4df39ecab3df /usr/src/tools/ctf/scripts
parent78d7e9613776b02098bc0b12fc9b9652b788b605 (diff)
downloadillumos-joyent-105958d7eca6f896fb8caab1f9777157eb0a352c.tar.gz
5773 Extra pointless steps in kernel module builds
Reviewed by: Dan McDonald <danmcd@omniti.com> Reviewed by: Josef Sipek <jeffpc@josefsipek.net> Reviewed by: Rich Lowe <richlowe@richlowe.net> Reviewed by: Robert Mustacchi <rm@joyent.com> Approved by: Rich Lowe <richlowe@richlowe.net>
Diffstat (limited to 'usr/src/tools/ctf/scripts')
-rw-r--r--usr/src/tools/ctf/scripts/Makefile47
-rw-r--r--usr/src/tools/ctf/scripts/ctfcvtptbl.pl222
-rw-r--r--usr/src/tools/ctf/scripts/ctffindmod.sh171
3 files changed, 0 insertions, 440 deletions
diff --git a/usr/src/tools/ctf/scripts/Makefile b/usr/src/tools/ctf/scripts/Makefile
deleted file mode 100644
index a4b30cf153..0000000000
--- a/usr/src/tools/ctf/scripts/Makefile
+++ /dev/null
@@ -1,47 +0,0 @@
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-#ident "%Z%%M% %I% %E% SMI"
-
-include ../../Makefile.tools
-
-.KEEP_STATE:
-
-SHFILES= \
- ctffindmod
-
-PERLFILES= \
- ctfcvtptbl
-
-all: $(SHFILES) $(PERLFILES)
-
-install: all .WAIT $(ROOTONBLDSHFILES) $(ROOTONBLDPERLFILES)
-
-lint:
-
-clean:
- $(RM) $(SHFILES) $(PERLFILES)
-
-include ../../Makefile.targ
diff --git a/usr/src/tools/ctf/scripts/ctfcvtptbl.pl b/usr/src/tools/ctf/scripts/ctfcvtptbl.pl
deleted file mode 100644
index cc2de05c3a..0000000000
--- a/usr/src/tools/ctf/scripts/ctfcvtptbl.pl
+++ /dev/null
@@ -1,222 +0,0 @@
-#!/bin/perl -w
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License, Version 1.0 only
-# (the "License"). You may not use this file except in compliance
-# with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# ident "%Z%%M% %I% %E% SMI"
-#
-# Copyright 2002 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# ctfcvtptbl [-o outfile] patch-makeup-table
-#
-# Given a path to a patch makeup table, this script converts that table to
-# machine-optimal format and deposits it in the file specified by the -o option
-# or on stdout depending on whether or not -o is specified.
-#
-# The user-supplied patch makeup table is in the following format:
-#
-# #
-# # comment
-# #
-#
-# genunix_archive=/path/to/genunix/archive
-#
-# patch 100001-01 kureq 100002-01
-# usr/src/uts/sparc/sd/debug32/sd
-# module2
-#
-# patch 100003-08
-# module3
-#
-# The machine-optimal format for the above looks like this:
-#
-# GENUNIX_ARCHIVE=/path/to/genunix/archive
-# module1 100001-01 100002-01
-# module2 100001-01 100002-01
-# module3 100003-08
-#
-#
-# Macros and other time-savers:
-#
-# * $RELEASE and $MACH in the genunix archive path will be replaced by the
-# values of the RELEASE and MACH environment variables, respectively, as
-# set by the program calling this one.
-#
-# * BUILD, BUILD32, and BUILD64 will, when used in the path for the module,
-# will be match as follows:
-#
-# BUILD debug32, debug64, obj32, obj64
-# BUILD32 debug32, obj32
-# BUILD64 debug64, obj64
-#
-# * The presence of `usr/src' at the beginning of each module path will be
-# assumed, and is not required to be specified.
-#
-
-use strict;
-use Getopt::Std;
-use File::Basename;
-
-my $PROGNAME = basename($0);
-
-my $genunix_archive;
-my %moddata;
-my %typehash = (
- BUILD => [ "debug32", "debug64", "obj32", "obj64" ],
- BUILD32 => [ "debug32", "obj32" ],
- BUILD64 => [ "debug64", "obj64" ]
-);
-
-my %opts;
-my $err = 0;
-$err = 1 unless getopts("ho:", \%opts);
-if ($opts{"o"}) {
- close(STDOUT);
- open(STDOUT, ">" . $opts{"o"}) || do {
- print STDERR "Couldn't open " . $opts{"o"} . ": $!\n";
- exit(1);
- }
-}
-if ($opts{"h"}) {
- &usage;
- exit(2);
-}
-
-if (@ARGV != 1) {
- $err = 1;
-}
-
-if ($err) {
- &usage;
- exit(2);
-}
-
-$::table = $ARGV[0];
-
-if (!open(TABLE, "<$::table")) {
- print STDERR "Couldn't open $::table: $!\n";
- exit(1);
-}
-
-if (!&read_table) {
- exit(1);
-}
-
-&sub_vars;
-
-&dump_table;
-
-exit(0);
-
-sub usage {
- print STDERR "Usage: $PROGNAME [-o outfile] table\n";
-}
-
-sub read_table {
- my $patchid = "";
- my $kureq = "";
- my $kuprev = "";
-
- $genunix_archive = "";
- undef %moddata;
-
- while (<TABLE>) {
- chop;
- s/\#.*$//; # Strip comments
- s/^\s+//;
-
- if (!$patchid && /^genunix_archive=(\S+)\s*$/) {
- $genunix_archive = $1;
- next;
- }
-
- while ($_) {
- if (s/^patch\s+(\d{6}-\d{2})
- (\s+ku(req|prev)\s+(\d{6}-\d{2}|fcs))?//x &&
- (!$_ || /^\s/)) {
- $patchid = $1;
- $kureq = (defined $4 ? $4 : "fcs");
- $kuprev = (defined $3 && $3 eq "prev" ? 1 : 0);
- } elsif ($patchid && s/^(\S+)//) {
- my $module = $1;
-
- if (($module =~ m:/genunix/:) && !$kuprev) {
- &parseerror("No kuprev supplied " .
- "for entry including genunix");
- }
-
- if (($module !~ m:^usr/src/:)) {
- $module = "usr/src/" . $module;
- }
-
- if (($module =~
- m:^(.*)\$(BUILD|BUILD32|BUILD64)(/.*)$:)) {
- foreach my $type (@{$typehash{$2}}) {
- $moddata{$1 . $type . $3} =
- [$patchid, $kureq];
- }
- } else {
- $moddata{$module} = [$patchid, $kureq];
- }
- } else {
- &parseerror("Cannot parse table");
- }
-
- s/^\s+//;
- }
- }
-
- if (!$genunix_archive) {
- print STDERR "No genunix_archive line in table\n";
- return (0);
- }
-
- if (!%moddata) {
- print STDERR "No module information read\n";
- return (0);
- }
-
- return (1);
-}
-
-sub parseerror {
- my $msg = $_[0];
-
- print STDERR "$msg at line $.\n";
- exit(1);
-}
-
-sub sub_vars {
- my $release = $ENV{"RELEASE"};
- my $mach = $ENV{"MACH"};
-
- $genunix_archive =~ s/\$RELEASE/$release/ if defined $release;
- $genunix_archive =~ s/\$MACH/$mach/ if defined $mach;
-}
-
-sub dump_table {
- print "GENUNIX_ARCHIVE=" . $genunix_archive . "\n";
-
- foreach my $mod (sort keys %moddata) {
- print join(" ", ($mod, @{$moddata{$mod}})) . "\n";
- }
-}
diff --git a/usr/src/tools/ctf/scripts/ctffindmod.sh b/usr/src/tools/ctf/scripts/ctffindmod.sh
deleted file mode 100644
index 8f583371d9..0000000000
--- a/usr/src/tools/ctf/scripts/ctffindmod.sh
+++ /dev/null
@@ -1,171 +0,0 @@
-#!/usr/bin/ksh -p
-#
-# CDDL HEADER START
-#
-# The contents of this file are subject to the terms of the
-# Common Development and Distribution License (the "License").
-# You may not use this file except in compliance with the License.
-#
-# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
-# or http://www.opensolaris.org/os/licensing.
-# See the License for the specific language governing permissions
-# and limitations under the License.
-#
-# When distributing Covered Code, include this CDDL HEADER in each
-# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
-# If applicable, add the following below this CDDL HEADER, with the
-# fields enclosed by brackets "[]" replaced with your own identifying
-# information: Portions Copyright [yyyy] [name of copyright owner]
-#
-# CDDL HEADER END
-#
-#
-# ident "%Z%%M% %I% %E% SMI"
-#
-# Copyright 2006 Sun Microsystems, Inc. All rights reserved.
-# Use is subject to license terms.
-#
-# Given a machine-optimal patch makeup table (see ctfcvtptbl), this program
-# will allow the build process to determine the following:
-#
-# * The patch ID associated with a given module
-# * The KU required by the patch associated with a given module
-# * The patch ID and location of the genunix module preceding the genunix
-# module currently being built.
-#
-
-PROGNAME=$(basename "$0")
-
-usage()
-{
- echo "Usage: $PROGNAME [-nr] [-o outfmt] [-b build_type] -t table" \
- "module_path" >&2
-}
-
-die()
-{
- echo "$1" >&2
- exit 1
-}
-
-outfmt="patch,ku"
-notfoundok=0
-relative=0
-build_type=debug32
-err=0
-while getopts b:lno:rt: c ; do
- case $c in
- b)
- build_type="$OPTARG"
- ;;
- n)
- notfoundok=1
- ;;
- o)
- outfmt="$OPTARG"
- ;;
- r)
- relative=1
- ;;
- t)
- table="$OPTARG"
- ;;
- \?)
- err=1
- ;;
- esac
-done
-shift `expr $OPTIND - 1`
-
-if [[ $err -eq 1 || $# -ne 1 || -z "$table" ]] ; then
- usage
- exit 2
-fi
-
-print_garpath=0
-print_ku=0
-print_patch=0
-print_lastgu=0
-for word in $(echo "$outfmt" |tr ',' ' ') ; do
- case $word in
- garpath)
- print_garpath=1
- ;;
- ku)
- print_ku=1
- ;;
- lastgu)
- print_lastgu=1
- ;;
- patch)
- print_patch=1
- ;;
- \?)
- usage
- exit 2
- esac
-done
-
-module="$1"
-shift
-
-if [[ ! -f "$table" ]] ; then
- die "$PROGNAME: Cannot open $table"
-fi
-
-head -1 "$table" |sed -e 's/^\([^=]*\)=/\1 /' |read garkw garpath
-
-if [[ "$garkw" != "GENUNIX_ARCHIVE" || -z "$garpath" ]] ; then
- die "$PROGNAME: $table is not a machine-optimal patch table" >&2
-fi
-
-if [[ $relative -eq 1 ]] ; then
- crd=$(pwd |sed -e 's:^.*usr/src/uts::')
- module=$(echo "$crd/$module" |sed -e 's://*:/:g')
-fi
-
-fgrep "$module" "$table" |read junk patch ku
-
-if [[ -z "$patch" ||
- "$(expr "$patch" : '[0-9]\{6\}-[0-9][0-9]')" -ne 9 ]] ; then
- if [[ "$notfoundok" -eq 1 ]] ; then
- patch="-"
- else
- die "$PROGNAME: Cannot find patch for $module" >&2
- fi
-fi
-
-if [[ -z "$ku" ]] ; then
- ku="-"
-fi
-
-# Output
-
-space=""
-if [[ $print_patch -eq 1 ]] ; then
- echo "$space$patch\c"
- space=" "
-fi
-if [[ $print_ku -eq 1 ]] ; then
- echo "$space$ku\c"
- space=" "
-fi
-if [[ $print_garpath -eq 1 ]] ; then
- echo "$space$garpath\c"
- space=" "
-fi
-if [[ $print_lastgu -eq 1 ]] ; then
- suffix=
- if expr $build_type : '.*64' >/dev/null ; then
- if [ `uname -p` = "sparc" ] ; then
- suffix=/sparcv9
- else
- suffix=/amd64
- fi
- fi
- echo "$space$garpath/$ku$suffix/genunix\c"
- space=" "
-fi
-[[ -n "$space" ]] && echo
-
-return 0