aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Waterman <andrew@sifive.com>2018-07-09 15:46:24 -0700
committerAndrew Waterman <andrew@sifive.com>2018-07-09 15:46:24 -0700
commit16476bd8219f58417a401ea0a720d9588d1d8ebc (patch)
treea6debdb2f24c119d281e1389c8efb0ac68b6fc86
parent600ff370c65ba99d2103a050a1847671cc0bd9c9 (diff)
downloadpk-16476bd8219f58417a401ea0a720d9588d1d8ebc.zip
pk-16476bd8219f58417a401ea0a720d9588d1d8ebc.tar.gz
pk-16476bd8219f58417a401ea0a720d9588d1d8ebc.tar.bz2
Properly license all nontrivial files
-rw-r--r--LICENSE.Batten34
-rw-r--r--LICENSE.SoftFloat37
-rw-r--r--Makefile.in2
-rw-r--r--aclocal.m42
-rw-r--r--bbl/bbl.ac2
-rw-r--r--bbl/bbl.c2
-rw-r--r--bbl/bbl.lds2
-rw-r--r--bbl/bbl.mk.in2
-rw-r--r--bbl/logo.c2
-rw-r--r--bbl/payload.S2
-rw-r--r--bbl/raw_logo.S2
-rw-r--r--configure.ac2
-rw-r--r--dummy_payload/dummy_entry.S2
-rw-r--r--dummy_payload/dummy_payload.lds2
-rw-r--r--dummy_payload/dummy_payload.mk.in2
-rw-r--r--machine/bits.h2
-rw-r--r--machine/disabled_hart_mask.h2
-rw-r--r--machine/emulation.c2
-rw-r--r--machine/emulation.h2
-rw-r--r--machine/fdt.c2
-rw-r--r--machine/fdt.h2
-rw-r--r--machine/finisher.c2
-rw-r--r--machine/finisher.h2
-rw-r--r--machine/flush_icache.c2
-rw-r--r--machine/fp_emulation.c2
-rw-r--r--machine/fp_emulation.h2
-rw-r--r--machine/fp_ldst.c2
-rw-r--r--machine/htif.c2
-rw-r--r--machine/htif.h2
-rw-r--r--machine/machine.ac2
-rw-r--r--machine/machine.mk.in2
-rw-r--r--machine/mcall.h2
-rw-r--r--machine/minit.c2
-rw-r--r--machine/misaligned_ldst.c2
-rw-r--r--machine/mtrap.c2
-rw-r--r--machine/mtrap.h2
-rw-r--r--machine/muldiv_emulation.c2
-rw-r--r--machine/uart.c2
-rw-r--r--machine/uart.h2
-rw-r--r--machine/uart16550.c2
-rw-r--r--machine/uart16550.h2
-rw-r--r--machine/unprivileged_memory.h2
-rw-r--r--machine/vm.h2
-rw-r--r--pk/console.c2
-rw-r--r--pk/mmap.c2
-rw-r--r--pk/mmap.h2
-rw-r--r--pk/pk.ac2
-rw-r--r--pk/pk.c2
-rw-r--r--pk/pk.lds2
-rw-r--r--pk/pk.mk.in2
-rwxr-xr-xscripts/install-sh520
-rwxr-xr-xscripts/install.sh238
-rwxr-xr-xscripts/vcs-version.sh2
-rwxr-xr-xsoftfloat/8086/OLD-specialize.c2
-rwxr-xr-xsoftfloat/8086/OLD-specialize.h2
-rwxr-xr-xsoftfloat/8086/platform.h2
-rwxr-xr-xsoftfloat/8086/s_commonNaNToF32UI.c2
-rwxr-xr-xsoftfloat/8086/s_commonNaNToF64UI.c2
-rwxr-xr-xsoftfloat/8086/s_f32UIToCommonNaN.c2
-rwxr-xr-xsoftfloat/8086/s_f64UIToCommonNaN.c2
-rwxr-xr-xsoftfloat/8086/s_isSigNaNF32UI.c2
-rwxr-xr-xsoftfloat/8086/s_isSigNaNF64UI.c2
-rwxr-xr-xsoftfloat/8086/s_propagateNaNF32UI.c2
-rwxr-xr-xsoftfloat/8086/s_propagateNaNF64UI.c2
-rwxr-xr-xsoftfloat/8086/softfloat_raiseFlags.c2
-rwxr-xr-xsoftfloat/8086/softfloat_types.h2
-rwxr-xr-xsoftfloat/8086/specialize.h2
-rwxr-xr-xsoftfloat/f32_add.c2
-rwxr-xr-xsoftfloat/f32_classify.c2
-rwxr-xr-xsoftfloat/f32_div.c2
-rwxr-xr-xsoftfloat/f32_eq.c2
-rwxr-xr-xsoftfloat/f32_eq_signaling.c2
-rwxr-xr-xsoftfloat/f32_isSignalingNaN.c2
-rwxr-xr-xsoftfloat/f32_le.c2
-rwxr-xr-xsoftfloat/f32_le_quiet.c2
-rwxr-xr-xsoftfloat/f32_lt.c2
-rwxr-xr-xsoftfloat/f32_lt_quiet.c2
-rwxr-xr-xsoftfloat/f32_mul.c2
-rwxr-xr-xsoftfloat/f32_mulAdd.c2
-rwxr-xr-xsoftfloat/f32_rem.c2
-rwxr-xr-xsoftfloat/f32_roundToInt.c2
-rwxr-xr-xsoftfloat/f32_sqrt.c2
-rwxr-xr-xsoftfloat/f32_sub.c2
-rwxr-xr-xsoftfloat/f32_to_f64.c2
-rwxr-xr-xsoftfloat/f32_to_i32.c2
-rwxr-xr-xsoftfloat/f32_to_i32_r_minMag.c2
-rwxr-xr-xsoftfloat/f32_to_i64.c2
-rwxr-xr-xsoftfloat/f32_to_i64_r_minMag.c2
-rwxr-xr-xsoftfloat/f32_to_ui32.c2
-rwxr-xr-xsoftfloat/f32_to_ui32_r_minMag.c2
-rwxr-xr-xsoftfloat/f32_to_ui64.c2
-rwxr-xr-xsoftfloat/f32_to_ui64_r_minMag.c2
-rwxr-xr-xsoftfloat/f64_add.c2
-rwxr-xr-xsoftfloat/f64_classify.c2
-rwxr-xr-xsoftfloat/f64_div.c2
-rwxr-xr-xsoftfloat/f64_eq.c2
-rwxr-xr-xsoftfloat/f64_eq_signaling.c2
-rwxr-xr-xsoftfloat/f64_isSignalingNaN.c2
-rwxr-xr-xsoftfloat/f64_le.c2
-rwxr-xr-xsoftfloat/f64_le_quiet.c2
-rwxr-xr-xsoftfloat/f64_lt.c2
-rwxr-xr-xsoftfloat/f64_lt_quiet.c2
-rwxr-xr-xsoftfloat/f64_mul.c2
-rwxr-xr-xsoftfloat/f64_mulAdd.c2
-rwxr-xr-xsoftfloat/f64_rem.c2
-rwxr-xr-xsoftfloat/f64_roundToInt.c2
-rwxr-xr-xsoftfloat/f64_sqrt.c2
-rwxr-xr-xsoftfloat/f64_sub.c2
-rwxr-xr-xsoftfloat/f64_to_f32.c2
-rwxr-xr-xsoftfloat/f64_to_i32.c2
-rwxr-xr-xsoftfloat/f64_to_i32_r_minMag.c2
-rwxr-xr-xsoftfloat/f64_to_i64.c2
-rwxr-xr-xsoftfloat/f64_to_i64_r_minMag.c2
-rwxr-xr-xsoftfloat/f64_to_ui32.c2
-rwxr-xr-xsoftfloat/f64_to_ui32_r_minMag.c2
-rwxr-xr-xsoftfloat/f64_to_ui64.c2
-rwxr-xr-xsoftfloat/f64_to_ui64_r_minMag.c2
-rwxr-xr-xsoftfloat/i32_to_f32.c2
-rwxr-xr-xsoftfloat/i32_to_f64.c2
-rwxr-xr-xsoftfloat/i64_to_f32.c2
-rwxr-xr-xsoftfloat/i64_to_f64.c2
-rwxr-xr-xsoftfloat/internals.h2
-rwxr-xr-xsoftfloat/platform.h2
-rwxr-xr-xsoftfloat/primitives.h2
-rwxr-xr-xsoftfloat/s_add128.c2
-rwxr-xr-xsoftfloat/s_add192.c2
-rwxr-xr-xsoftfloat/s_addMagsF32.c2
-rwxr-xr-xsoftfloat/s_addMagsF64.c2
-rwxr-xr-xsoftfloat/s_commonNaNToF32UI.c2
-rwxr-xr-xsoftfloat/s_commonNaNToF64UI.c2
-rwxr-xr-xsoftfloat/s_countLeadingZeros32.c2
-rwxr-xr-xsoftfloat/s_countLeadingZeros64.c2
-rwxr-xr-xsoftfloat/s_countLeadingZeros8.c2
-rwxr-xr-xsoftfloat/s_eq128.c2
-rwxr-xr-xsoftfloat/s_estimateDiv128To64.c2
-rwxr-xr-xsoftfloat/s_estimateSqrt32.c2
-rwxr-xr-xsoftfloat/s_f32UIToCommonNaN.c2
-rwxr-xr-xsoftfloat/s_f64UIToCommonNaN.c2
-rwxr-xr-xsoftfloat/s_isSigNaNF32UI.c2
-rwxr-xr-xsoftfloat/s_isSigNaNF64UI.c2
-rwxr-xr-xsoftfloat/s_le128.c2
-rwxr-xr-xsoftfloat/s_lt128.c2
-rwxr-xr-xsoftfloat/s_mul128By64To192.c2
-rwxr-xr-xsoftfloat/s_mul128To256.c2
-rwxr-xr-xsoftfloat/s_mul64To128.c2
-rwxr-xr-xsoftfloat/s_mulAddF32.c2
-rwxr-xr-xsoftfloat/s_mulAddF64.c2
-rwxr-xr-xsoftfloat/s_normRoundPackToF32.c2
-rwxr-xr-xsoftfloat/s_normRoundPackToF64.c2
-rwxr-xr-xsoftfloat/s_normSubnormalF32Sig.c2
-rwxr-xr-xsoftfloat/s_normSubnormalF64Sig.c2
-rwxr-xr-xsoftfloat/s_propagateNaNF32UI.c2
-rwxr-xr-xsoftfloat/s_propagateNaNF64UI.c2
-rwxr-xr-xsoftfloat/s_roundPackToF32.c2
-rwxr-xr-xsoftfloat/s_roundPackToF64.c2
-rwxr-xr-xsoftfloat/s_roundPackToI32.c2
-rwxr-xr-xsoftfloat/s_roundPackToI64.c2
-rwxr-xr-xsoftfloat/s_roundPackToUI32.c2
-rwxr-xr-xsoftfloat/s_roundPackToUI64.c2
-rwxr-xr-xsoftfloat/s_shift128ExtraRightJam.c2
-rwxr-xr-xsoftfloat/s_shift128RightJam.c2
-rwxr-xr-xsoftfloat/s_shift32RightJam.c2
-rwxr-xr-xsoftfloat/s_shift64ExtraRightJam.c2
-rwxr-xr-xsoftfloat/s_shift64RightJam.c2
-rwxr-xr-xsoftfloat/s_shortShift128ExtraRightJam.c2
-rwxr-xr-xsoftfloat/s_shortShift128Left.c2
-rwxr-xr-xsoftfloat/s_shortShift128Right.c2
-rwxr-xr-xsoftfloat/s_shortShift192Left.c2
-rwxr-xr-xsoftfloat/s_shortShift32Right1Jam.c2
-rwxr-xr-xsoftfloat/s_shortShift64ExtraRightJam.c2
-rwxr-xr-xsoftfloat/s_shortShift64RightJam.c2
-rwxr-xr-xsoftfloat/s_sub128.c2
-rwxr-xr-xsoftfloat/s_sub192.c2
-rwxr-xr-xsoftfloat/s_subMagsF32.c2
-rwxr-xr-xsoftfloat/s_subMagsF64.c2
-rwxr-xr-xsoftfloat/softfloat.h2
-rw-r--r--softfloat/softfloat.mk.in2
-rwxr-xr-xsoftfloat/softfloat_raiseFlags.c2
-rwxr-xr-xsoftfloat/softfloat_types.h2
-rwxr-xr-xsoftfloat/specialize.h2
-rwxr-xr-xsoftfloat/ui32_to_f32.c2
-rwxr-xr-xsoftfloat/ui32_to_f64.c2
-rwxr-xr-xsoftfloat/ui64_to_f32.c2
-rwxr-xr-xsoftfloat/ui64_to_f64.c2
-rw-r--r--util/string.c2
-rw-r--r--util/util.mk.in2
186 files changed, 955 insertions, 238 deletions
diff --git a/LICENSE.Batten b/LICENSE.Batten
new file mode 100644
index 0000000..447c163
--- /dev/null
+++ b/LICENSE.Batten
@@ -0,0 +1,34 @@
+==========================================================================
+Copyright License
+==========================================================================
+
+Copyright (c) 2008, Christopher Batten
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+* Redistributions of source code must retain the above copyright
+ notice, this list of conditions, and the following disclaimer.
+
+* 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.
+
+* Neither the name of the Massachusetts Institute of Technology nor the
+ names of its contributors may be used to endorse or promote products
+ derived from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY Christopher Batten ''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 Christopher Batten 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.
+
diff --git a/LICENSE.SoftFloat b/LICENSE.SoftFloat
new file mode 100644
index 0000000..b5690fa
--- /dev/null
+++ b/LICENSE.SoftFloat
@@ -0,0 +1,37 @@
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California. 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.
+
+ 3. Neither the name of the University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS 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 REGENTS 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.
+
diff --git a/Makefile.in b/Makefile.in
index 75a7eaf..aeabdc2 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,3 +1,5 @@
+# See LICENSE.Batten for license details.
+#
#=========================================================================
# Toplevel Makefile for the Modular C++ Build System
#=========================================================================
diff --git a/aclocal.m4 b/aclocal.m4
index 55a8b70..9f7a242 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,3 +1,5 @@
+# See LICENSE.Batten for license details.
+#
#=========================================================================
# Local Autoconf Macros
#=========================================================================
diff --git a/bbl/bbl.ac b/bbl/bbl.ac
index 55ff50b..b803ae9 100644
--- a/bbl/bbl.ac
+++ b/bbl/bbl.ac
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
AC_ARG_ENABLE([logo], AS_HELP_STRING([--enable-logo], [Enable boot logo]))
AS_IF([test "x$enable_logo" == "xyes"], [
AC_DEFINE([PK_ENABLE_LOGO],,[Define if the RISC-V logo is to be displayed])
diff --git a/bbl/bbl.c b/bbl/bbl.c
index 93746ff..6363d0a 100644
--- a/bbl/bbl.c
+++ b/bbl/bbl.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "bbl.h"
#include "mtrap.h"
#include "atomic.h"
diff --git a/bbl/bbl.lds b/bbl/bbl.lds
index 2fd0d7c..26f5816 100644
--- a/bbl/bbl.lds
+++ b/bbl/bbl.lds
@@ -1,3 +1,5 @@
+/* See LICENSE for license details. */
+
OUTPUT_ARCH( "riscv" )
ENTRY( reset_vector )
diff --git a/bbl/bbl.mk.in b/bbl/bbl.mk.in
index 2bc96e1..4d40987 100644
--- a/bbl/bbl.mk.in
+++ b/bbl/bbl.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
bbl_subproject_deps = \
util \
softfloat \
diff --git a/bbl/logo.c b/bbl/logo.c
index fcd43ec..3963e43 100644
--- a/bbl/logo.c
+++ b/bbl/logo.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <string.h>
#include "mtrap.h"
diff --git a/bbl/payload.S b/bbl/payload.S
index b6797aa..9f79430 100644
--- a/bbl/payload.S
+++ b/bbl/payload.S
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "config.h"
#include "encoding.h"
diff --git a/bbl/raw_logo.S b/bbl/raw_logo.S
index bddf8f4..0eaf6cc 100644
--- a/bbl/raw_logo.S
+++ b/bbl/raw_logo.S
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "encoding.h"
.section .rodata
diff --git a/configure.ac b/configure.ac
index 8a3f940..917179f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,3 +1,5 @@
+# See LICENSE.Batten for license details.
+#
#=========================================================================
# Toplevel configure.ac for the Modular C++ Build System
#=========================================================================
diff --git a/dummy_payload/dummy_entry.S b/dummy_payload/dummy_entry.S
index 2473d8c..c3fe4d0 100644
--- a/dummy_payload/dummy_entry.S
+++ b/dummy_payload/dummy_entry.S
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "mcall.h"
.section ".text.init"
diff --git a/dummy_payload/dummy_payload.lds b/dummy_payload/dummy_payload.lds
index 0506a8d..7e5f3c8 100644
--- a/dummy_payload/dummy_payload.lds
+++ b/dummy_payload/dummy_payload.lds
@@ -1,3 +1,5 @@
+/* See LICENSE for license details. */
+
ENTRY(_start)
SECTIONS {
diff --git a/dummy_payload/dummy_payload.mk.in b/dummy_payload/dummy_payload.mk.in
index 4a133be..487e4fa 100644
--- a/dummy_payload/dummy_payload.mk.in
+++ b/dummy_payload/dummy_payload.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
dummy_payload_subproject_deps = \
dummy_payload_hdrs = \
diff --git a/machine/bits.h b/machine/bits.h
index e578903..0378d80 100644
--- a/machine/bits.h
+++ b/machine/bits.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_BITS_H
#define _RISCV_BITS_H
diff --git a/machine/disabled_hart_mask.h b/machine/disabled_hart_mask.h
index 2a3a73c..3dd98e3 100644
--- a/machine/disabled_hart_mask.h
+++ b/machine/disabled_hart_mask.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef DISABLED_HART_MASK_H
#define DISABLED_HART_MASK_H
extern long disabled_hart_mask;
diff --git a/machine/emulation.c b/machine/emulation.c
index db0f3a7..132e977 100644
--- a/machine/emulation.c
+++ b/machine/emulation.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "emulation.h"
#include "fp_emulation.h"
#include "config.h"
diff --git a/machine/emulation.h b/machine/emulation.h
index f75173d..62115bc 100644
--- a/machine/emulation.h
+++ b/machine/emulation.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_EMULATION_H
#define _RISCV_EMULATION_H
diff --git a/machine/fdt.c b/machine/fdt.c
index b6a7a4b..e8a504f 100644
--- a/machine/fdt.c
+++ b/machine/fdt.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <stdbool.h>
#include <stdint.h>
#include <string.h>
diff --git a/machine/fdt.h b/machine/fdt.h
index 6c8a6fe..97aa70d 100644
--- a/machine/fdt.h
+++ b/machine/fdt.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef FDT_H
#define FDT_H
diff --git a/machine/finisher.c b/machine/finisher.c
index d113096..60dcb30 100644
--- a/machine/finisher.c
+++ b/machine/finisher.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <string.h>
#include "finisher.h"
#include "fdt.h"
diff --git a/machine/finisher.h b/machine/finisher.h
index 60d10b4..3788c9c 100644
--- a/machine/finisher.h
+++ b/machine/finisher.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_FINISHER_H
#define _RISCV_FINISHER_H
diff --git a/machine/flush_icache.c b/machine/flush_icache.c
index 45ba204..3a3dbc1 100644
--- a/machine/flush_icache.c
+++ b/machine/flush_icache.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
void __riscv_flush_icache(void) {
__asm__ volatile ("fence.i");
}
diff --git a/machine/fp_emulation.c b/machine/fp_emulation.c
index c83ef73..6a0caec 100644
--- a/machine/fp_emulation.c
+++ b/machine/fp_emulation.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "fp_emulation.h"
#include "unprivileged_memory.h"
#include "softfloat.h"
diff --git a/machine/fp_emulation.h b/machine/fp_emulation.h
index 97950df..1352ca3 100644
--- a/machine/fp_emulation.h
+++ b/machine/fp_emulation.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_FP_EMULATION_H
#define _RISCV_FP_EMULATION_H
diff --git a/machine/fp_ldst.c b/machine/fp_ldst.c
index e11900c..45f843b 100644
--- a/machine/fp_ldst.c
+++ b/machine/fp_ldst.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "fp_emulation.h"
#include "unprivileged_memory.h"
diff --git a/machine/htif.c b/machine/htif.c
index 44ec2dd..d3921a4 100644
--- a/machine/htif.c
+++ b/machine/htif.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "htif.h"
#include "atomic.h"
#include "mtrap.h"
diff --git a/machine/htif.h b/machine/htif.h
index a96bf60..a4e5e8e 100644
--- a/machine/htif.h
+++ b/machine/htif.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_HTIF_H
#define _RISCV_HTIF_H
diff --git a/machine/machine.ac b/machine/machine.ac
index 65acf04..a787113 100644
--- a/machine/machine.ac
+++ b/machine/machine.ac
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
AC_ARG_ENABLE([fp-emulation], AS_HELP_STRING([--disable-fp-emulation], [Disable floating-point emulation]))
AS_IF([test "x$enable_fp_emulation" != "xno"], [
AC_DEFINE([PK_ENABLE_FP_EMULATION],,[Define if floating-point emulation is enabled])
diff --git a/machine/machine.mk.in b/machine/machine.mk.in
index d6829eb..dcecb7a 100644
--- a/machine/machine.mk.in
+++ b/machine/machine.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
machine_subproject_deps = \
softfloat \
diff --git a/machine/mcall.h b/machine/mcall.h
index 6a2c037..008179f 100644
--- a/machine/mcall.h
+++ b/machine/mcall.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_SBI_H
#define _RISCV_SBI_H
diff --git a/machine/minit.c b/machine/minit.c
index ceae6b7..a411978 100644
--- a/machine/minit.c
+++ b/machine/minit.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "mtrap.h"
#include "atomic.h"
#include "vm.h"
diff --git a/machine/misaligned_ldst.c b/machine/misaligned_ldst.c
index 2fccd50..a44195b 100644
--- a/machine/misaligned_ldst.c
+++ b/machine/misaligned_ldst.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "emulation.h"
#include "fp_emulation.h"
#include "unprivileged_memory.h"
diff --git a/machine/mtrap.c b/machine/mtrap.c
index b8dcc68..e48d3d5 100644
--- a/machine/mtrap.c
+++ b/machine/mtrap.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "mtrap.h"
#include "mcall.h"
#include "htif.h"
diff --git a/machine/mtrap.h b/machine/mtrap.h
index c4d43d0..4b9e569 100644
--- a/machine/mtrap.h
+++ b/machine/mtrap.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_MTRAP_H
#define _RISCV_MTRAP_H
diff --git a/machine/muldiv_emulation.c b/machine/muldiv_emulation.c
index 1fde345..dba5c03 100644
--- a/machine/muldiv_emulation.c
+++ b/machine/muldiv_emulation.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "emulation.h"
#ifndef __riscv_muldiv
diff --git a/machine/uart.c b/machine/uart.c
index 0645500..8cb47fb 100644
--- a/machine/uart.c
+++ b/machine/uart.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <string.h>
#include "uart.h"
#include "fdt.h"
diff --git a/machine/uart.h b/machine/uart.h
index 51e951f..928009d 100644
--- a/machine/uart.h
+++ b/machine/uart.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_UART_H
#define _RISCV_UART_H
diff --git a/machine/uart16550.c b/machine/uart16550.c
index fe1ba99..16c6186 100644
--- a/machine/uart16550.c
+++ b/machine/uart16550.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <string.h>
#include "uart16550.h"
#include "fdt.h"
diff --git a/machine/uart16550.h b/machine/uart16550.h
index d7a0805..2ae44ce 100644
--- a/machine/uart16550.h
+++ b/machine/uart16550.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_16550_H
#define _RISCV_16550_H
diff --git a/machine/unprivileged_memory.h b/machine/unprivileged_memory.h
index 5cf2727..a904fd6 100644
--- a/machine/unprivileged_memory.h
+++ b/machine/unprivileged_memory.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _RISCV_MISALIGNED_H
#define _RISCV_MISALIGNED_H
diff --git a/machine/vm.h b/machine/vm.h
index 986f301..9436ffb 100644
--- a/machine/vm.h
+++ b/machine/vm.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _VM_H
#define _VM_H
diff --git a/pk/console.c b/pk/console.c
index de7f0a8..ec84981 100644
--- a/pk/console.c
+++ b/pk/console.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "pk.h"
#include "file.h"
#include "frontend.h"
diff --git a/pk/mmap.c b/pk/mmap.c
index 3b52c23..8cdce29 100644
--- a/pk/mmap.c
+++ b/pk/mmap.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "mmap.h"
#include "atomic.h"
#include "pk.h"
diff --git a/pk/mmap.h b/pk/mmap.h
index efc7c1e..0d40efd 100644
--- a/pk/mmap.h
+++ b/pk/mmap.h
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#ifndef _MMAP_H
#define _MMAP_H
diff --git a/pk/pk.ac b/pk/pk.ac
index f846905..cc1828d 100644
--- a/pk/pk.ac
+++ b/pk/pk.ac
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
AC_ARG_ENABLE([vm], AS_HELP_STRING([--disable-vm], [Disable virtual memory]))
AS_IF([test "x$enable_vm" != "xno"], [
AC_DEFINE([PK_ENABLE_VM],,[Define if virtual memory support is enabled])
diff --git a/pk/pk.c b/pk/pk.c
index f0969a1..a149a42 100644
--- a/pk/pk.c
+++ b/pk/pk.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include "pk.h"
#include "mmap.h"
#include "boot.h"
diff --git a/pk/pk.lds b/pk/pk.lds
index f1f3f95..52a7239 100644
--- a/pk/pk.lds
+++ b/pk/pk.lds
@@ -1,3 +1,5 @@
+/* See LICENSE for license details. */
+
OUTPUT_ARCH( "riscv" )
ENTRY( reset_vector )
diff --git a/pk/pk.mk.in b/pk/pk.mk.in
index 3caa25d..281b1d9 100644
--- a/pk/pk.mk.in
+++ b/pk/pk.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
pk_subproject_deps = \
util \
softfloat \
diff --git a/scripts/install-sh b/scripts/install-sh
new file mode 100755
index 0000000..6781b98
--- /dev/null
+++ b/scripts/install-sh
@@ -0,0 +1,520 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2009-04-28.21; # UTC
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch.
+
+nl='
+'
+IFS=" "" $nl"
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit=${DOITPROG-}
+if test -z "$doit"; then
+ doit_exec=exec
+else
+ doit_exec=$doit
+fi
+
+# Put in absolute file names if you don't have them in your path;
+# or use environment vars.
+
+chgrpprog=${CHGRPPROG-chgrp}
+chmodprog=${CHMODPROG-chmod}
+chownprog=${CHOWNPROG-chown}
+cmpprog=${CMPPROG-cmp}
+cpprog=${CPPROG-cp}
+mkdirprog=${MKDIRPROG-mkdir}
+mvprog=${MVPROG-mv}
+rmprog=${RMPROG-rm}
+stripprog=${STRIPPROG-strip}
+
+posix_glob='?'
+initialize_posix_glob='
+ test "$posix_glob" != "?" || {
+ if (set -f) 2>/dev/null; then
+ posix_glob=
+ else
+ posix_glob=:
+ fi
+ }
+'
+
+posix_mkdir=
+
+# Desired mode of installed file.
+mode=0755
+
+chgrpcmd=
+chmodcmd=$chmodprog
+chowncmd=
+mvcmd=$mvprog
+rmcmd="$rmprog -f"
+stripcmd=
+
+src=
+dst=
+dir_arg=
+dst_arg=
+
+copy_on_change=false
+no_target_directory=
+
+usage="\
+Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+ or: $0 [OPTION]... SRCFILES... DIRECTORY
+ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+ or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+ --help display this help and exit.
+ --version display version info and exit.
+
+ -c (ignored)
+ -C install only if different (preserve the last data modification time)
+ -d create directories instead of installing files.
+ -g GROUP $chgrpprog installed files to GROUP.
+ -m MODE $chmodprog installed files to MODE.
+ -o USER $chownprog installed files to USER.
+ -s $stripprog installed files.
+ -t DIRECTORY install into DIRECTORY.
+ -T report an error if DSTFILE is a directory.
+
+Environment variables override the default commands:
+ CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
+ RMPROG STRIPPROG
+"
+
+while test $# -ne 0; do
+ case $1 in
+ -c) ;;
+
+ -C) copy_on_change=true;;
+
+ -d) dir_arg=true;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift;;
+
+ --help) echo "$usage"; exit $?;;
+
+ -m) mode=$2
+ case $mode in
+ *' '* | *' '* | *'
+'* | *'*'* | *'?'* | *'['*)
+ echo "$0: invalid mode: $mode" >&2
+ exit 1;;
+ esac
+ shift;;
+
+ -o) chowncmd="$chownprog $2"
+ shift;;
+
+ -s) stripcmd=$stripprog;;
+
+ -t) dst_arg=$2
+ shift;;
+
+ -T) no_target_directory=true;;
+
+ --version) echo "$0 $scriptversion"; exit $?;;
+
+ --) shift
+ break;;
+
+ -*) echo "$0: invalid option: $1" >&2
+ exit 1;;
+
+ *) break;;
+ esac
+ shift
+done
+
+if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
+ # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dst_arg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dst_arg"
+ shift # fnord
+ fi
+ shift # arg
+ dst_arg=$arg
+ done
+fi
+
+if test $# -eq 0; then
+ if test -z "$dir_arg"; then
+ echo "$0: no input file specified." >&2
+ exit 1
+ fi
+ # It's OK to call `install-sh -d' without argument.
+ # This can happen when creating conditional directories.
+ exit 0
+fi
+
+if test -z "$dir_arg"; then
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Set umask so as not to create temps with too-generous modes.
+ # However, 'strip' requires both read and write access to temps.
+ case $mode in
+ # Optimize common cases.
+ *644) cp_umask=133;;
+ *755) cp_umask=22;;
+
+ *[0-7])
+ if test -z "$stripcmd"; then
+ u_plus_rw=
+ else
+ u_plus_rw='% 200'
+ fi
+ cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
+ *)
+ if test -z "$stripcmd"; then
+ u_plus_rw=
+ else
+ u_plus_rw=,u+rw
+ fi
+ cp_umask=$mode$u_plus_rw;;
+ esac
+fi
+
+for src
+do
+ # Protect names starting with `-'.
+ case $src in
+ -*) src=./$src;;
+ esac
+
+ if test -n "$dir_arg"; then
+ dst=$src
+ dstdir=$dst
+ test -d "$dstdir"
+ dstdir_status=$?
+ else
+
+ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+ # might cause directories to be created, which would be especially bad
+ # if $src (and thus $dsttmp) contains '*'.
+ if test ! -f "$src" && test ! -d "$src"; then
+ echo "$0: $src does not exist." >&2
+ exit 1
+ fi
+
+ if test -z "$dst_arg"; then
+ echo "$0: no destination specified." >&2
+ exit 1
+ fi
+
+ dst=$dst_arg
+ # Protect names starting with `-'.
+ case $dst in
+ -*) dst=./$dst;;
+ esac
+
+ # If destination is a directory, append the input filename; won't work
+ # if double slashes aren't ignored.
+ if test -d "$dst"; then
+ if test -n "$no_target_directory"; then
+ echo "$0: $dst_arg: Is a directory" >&2
+ exit 1
+ fi
+ dstdir=$dst
+ dst=$dstdir/`basename "$src"`
+ dstdir_status=0
+ else
+ # Prefer dirname, but fall back on a substitute if dirname fails.
+ dstdir=`
+ (dirname "$dst") 2>/dev/null ||
+ expr X"$dst" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$dst" : 'X\(//\)[^/]' \| \
+ X"$dst" : 'X\(//\)$' \| \
+ X"$dst" : 'X\(/\)' \| . 2>/dev/null ||
+ echo X"$dst" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)[^/].*/{
+ s//\1/
+ q
+ }
+ /^X\(\/\/\)$/{
+ s//\1/
+ q
+ }
+ /^X\(\/\).*/{
+ s//\1/
+ q
+ }
+ s/.*/./; q'
+ `
+
+ test -d "$dstdir"
+ dstdir_status=$?
+ fi
+ fi
+
+ obsolete_mkdir_used=false
+
+ if test $dstdir_status != 0; then
+ case $posix_mkdir in
+ '')
+ # Create intermediate dirs using mode 755 as modified by the umask.
+ # This is like FreeBSD 'install' as of 1997-10-28.
+ umask=`umask`
+ case $stripcmd.$umask in
+ # Optimize common cases.
+ *[2367][2367]) mkdir_umask=$umask;;
+ .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;;
+
+ *[0-7])
+ mkdir_umask=`expr $umask + 22 \
+ - $umask % 100 % 40 + $umask % 20 \
+ - $umask % 10 % 4 + $umask % 2
+ `;;
+ *) mkdir_umask=$umask,go-w;;
+ esac
+
+ # With -d, create the new directory with the user-specified mode.
+ # Otherwise, rely on $mkdir_umask.
+ if test -n "$dir_arg"; then
+ mkdir_mode=-m$mode
+ else
+ mkdir_mode=
+ fi
+
+ posix_mkdir=false
+ case $umask in
+ *[123567][0-7][0-7])
+ # POSIX mkdir -p sets u+wx bits regardless of umask, which
+ # is incompatible with FreeBSD 'install' when (umask & 300) != 0.
+ ;;
+ *)
+ tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
+ trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0
+
+ if (umask $mkdir_umask &&
+ exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1
+ then
+ if test -z "$dir_arg" || {
+ # Check for POSIX incompatibilities with -m.
+ # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
+ # other-writeable bit of parent directory when it shouldn't.
+ # FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
+ ls_ld_tmpdir=`ls -ld "$tmpdir"`
+ case $ls_ld_tmpdir in
+ d????-?r-*) different_mode=700;;
+ d????-?--*) different_mode=755;;
+ *) false;;
+ esac &&
+ $mkdirprog -m$different_mode -p -- "$tmpdir" && {
+ ls_ld_tmpdir_1=`ls -ld "$tmpdir"`
+ test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
+ }
+ }
+ then posix_mkdir=:
+ fi
+ rmdir "$tmpdir/d" "$tmpdir"
+ else
+ # Remove any dirs left behind by ancient mkdir implementations.
+ rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null
+ fi
+ trap '' 0;;
+ esac;;
+ esac
+
+ if
+ $posix_mkdir && (
+ umask $mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
+ )
+ then :
+ else
+
+ # The umask is ridiculous, or mkdir does not conform to POSIX,
+ # or it failed possibly due to a race condition. Create the
+ # directory the slow way, step by step, checking for races as we go.
+
+ case $dstdir in
+ /*) prefix='/';;
+ -*) prefix='./';;
+ *) prefix='';;
+ esac
+
+ eval "$initialize_posix_glob"
+
+ oIFS=$IFS
+ IFS=/
+ $posix_glob set -f
+ set fnord $dstdir
+ shift
+ $posix_glob set +f
+ IFS=$oIFS
+
+ prefixes=
+
+ for d
+ do
+ test -z "$d" && continue
+
+ prefix=$prefix$d
+ if test -d "$prefix"; then
+ prefixes=
+ else
+ if $posix_mkdir; then
+ (umask=$mkdir_umask &&
+ $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
+ # Don't fail if two instances are running concurrently.
+ test -d "$prefix" || exit 1
+ else
+ case $prefix in
+ *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) qprefix=$prefix;;
+ esac
+ prefixes="$prefixes '$qprefix'"
+ fi
+ fi
+ prefix=$prefix/
+ done
+
+ if test -n "$prefixes"; then
+ # Don't fail if two instances are running concurrently.
+ (umask $mkdir_umask &&
+ eval "\$doit_exec \$mkdirprog $prefixes") ||
+ test -d "$dstdir" || exit 1
+ obsolete_mkdir_used=true
+ fi
+ fi
+ fi
+
+ if test -n "$dir_arg"; then
+ { test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
+ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
+ { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
+ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
+ else
+
+ # Make a couple of temp file names in the proper directory.
+ dsttmp=$dstdir/_inst.$$_
+ rmtmp=$dstdir/_rm.$$_
+
+ # Trap to clean up those temp files at exit.
+ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+
+ # Copy the file name to the temp name.
+ (umask $cp_umask && $doit_exec $cpprog "$src" "$dsttmp") &&
+
+ # and set any options; do chmod last to preserve setuid bits.
+ #
+ # If any of these fail, we abort the whole thing. If we want to
+ # ignore errors from any of these, just make sure not to ignore
+ # errors from the above "$doit $cpprog $src $dsttmp" command.
+ #
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
+ { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
+ { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
+ { test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
+
+ # If -C, don't bother to copy if it wouldn't change the file.
+ if $copy_on_change &&
+ old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
+ new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
+
+ eval "$initialize_posix_glob" &&
+ $posix_glob set -f &&
+ set X $old && old=:$2:$4:$5:$6 &&
+ set X $new && new=:$2:$4:$5:$6 &&
+ $posix_glob set +f &&
+
+ test "$old" = "$new" &&
+ $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
+ then
+ rm -f "$dsttmp"
+ else
+ # Rename the file to the real destination.
+ $doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
+
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+ {
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ test ! -f "$dst" ||
+ $doit $rmcmd -f "$dst" 2>/dev/null ||
+ { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
+ { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; }
+ } ||
+ { echo "$0: cannot unlink or rename $dst" >&2
+ (exit 1); exit 1
+ }
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dst"
+ }
+ fi || exit 1
+
+ trap '' 0
+ fi
+done
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-time-zone: "UTC"
+# time-stamp-end: "; # UTC"
+# End:
diff --git a/scripts/install.sh b/scripts/install.sh
deleted file mode 100755
index 89fc9b0..0000000
--- a/scripts/install.sh
+++ /dev/null
@@ -1,238 +0,0 @@
-#! /bin/sh
-#
-# install - install a program, script, or datafile
-# This comes from X11R5.
-#
-# Calling this script install-sh is preferred over install.sh, to prevent
-# `make' implicit rules from creating a file called install from it
-# when there is no Makefile.
-#
-# This script is compatible with the BSD install script, but was written
-# from scratch.
-#
-
-
-# set DOITPROG to echo to test this script
-
-# Don't use :- since 4.3BSD and earlier shells don't like it.
-doit="${DOITPROG-}"
-
-
-# put in absolute paths if you don't have them in your path; or use env. vars.
-
-mvprog="${MVPROG-mv}"
-cpprog="${CPPROG-cp}"
-chmodprog="${CHMODPROG-chmod}"
-chownprog="${CHOWNPROG-chown}"
-chgrpprog="${CHGRPPROG-chgrp}"
-stripprog="${STRIPPROG-strip}"
-rmprog="${RMPROG-rm}"
-mkdirprog="${MKDIRPROG-mkdir}"
-
-tranformbasename=""
-transform_arg=""
-instcmd="$mvprog"
-chmodcmd="$chmodprog 0755"
-chowncmd=""
-chgrpcmd=""
-stripcmd=""
-rmcmd="$rmprog -f"
-mvcmd="$mvprog"
-src=""
-dst=""
-dir_arg=""
-
-while [ x"$1" != x ]; do
- case $1 in
- -c) instcmd="$cpprog"
- shift
- continue;;
-
- -d) dir_arg=true
- shift
- continue;;
-
- -m) chmodcmd="$chmodprog $2"
- shift
- shift
- continue;;
-
- -o) chowncmd="$chownprog $2"
- shift
- shift
- continue;;
-
- -g) chgrpcmd="$chgrpprog $2"
- shift
- shift
- continue;;
-
- -s) stripcmd="$stripprog"
- shift
- continue;;
-
- -t=*) transformarg=`echo $1 | sed 's/-t=//'`
- shift
- continue;;
-
- -b=*) transformbasename=`echo $1 | sed 's/-b=//'`
- shift
- continue;;
-
- *) if [ x"$src" = x ]
- then
- src=$1
- else
- # this colon is to work around a 386BSD /bin/sh bug
- :
- dst=$1
- fi
- shift
- continue;;
- esac
-done
-
-if [ x"$src" = x ]
-then
- echo "install: no input file specified"
- exit 1
-else
- true
-fi
-
-if [ x"$dir_arg" != x ]; then
- dst=$src
- src=""
-
- if [ -d $dst ]; then
- instcmd=:
- else
- instcmd=mkdir
- fi
-else
-
-# Waiting for this to be detected by the "$instcmd $src $dsttmp" command
-# might cause directories to be created, which would be especially bad
-# if $src (and thus $dsttmp) contains '*'.
-
- if [ -f $src -o -d $src ]
- then
- true
- else
- echo "install: $src does not exist"
- exit 1
- fi
-
- if [ x"$dst" = x ]
- then
- echo "install: no destination specified"
- exit 1
- else
- true
- fi
-
-# If destination is a directory, append the input filename; if your system
-# does not like double slashes in filenames, you may need to add some logic
-
- if [ -d $dst ]
- then
- dst="$dst"/`basename $src`
- else
- true
- fi
-fi
-
-## this sed command emulates the dirname command
-dstdir=`echo $dst | sed -e 's,[^/]*$,,;s,/$,,;s,^$,.,'`
-
-# Make sure that the destination directory exists.
-# this part is taken from Noah Friedman's mkinstalldirs script
-
-# Skip lots of stat calls in the usual case.
-if [ ! -d "$dstdir" ]; then
-defaultIFS='
-'
-IFS="${IFS-${defaultIFS}}"
-
-oIFS="${IFS}"
-# Some sh's can't handle IFS=/ for some reason.
-IFS='%'
-set - `echo ${dstdir} | sed -e 's@/@%@g' -e 's@^%@/@'`
-IFS="${oIFS}"
-
-pathcomp=''
-
-while [ $# -ne 0 ] ; do
- pathcomp="${pathcomp}${1}"
- shift
-
- if [ ! -d "${pathcomp}" ] ;
- then
- $mkdirprog "${pathcomp}"
- else
- true
- fi
-
- pathcomp="${pathcomp}/"
-done
-fi
-
-if [ x"$dir_arg" != x ]
-then
- $doit $instcmd $dst &&
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dst; else true ; fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dst; else true ; fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dst; else true ; fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dst; else true ; fi
-else
-
-# If we're going to rename the final executable, determine the name now.
-
- if [ x"$transformarg" = x ]
- then
- dstfile=`basename $dst`
- else
- dstfile=`basename $dst $transformbasename |
- sed $transformarg`$transformbasename
- fi
-
-# don't allow the sed command to completely eliminate the filename
-
- if [ x"$dstfile" = x ]
- then
- dstfile=`basename $dst`
- else
- true
- fi
-
-# Make a temp file name in the proper directory.
-
- dsttmp=$dstdir/#inst.$$#
-
-# Move or copy the file name to the temp name
-
- $doit $instcmd $src $dsttmp &&
-
- trap "rm -f ${dsttmp}" 0 &&
-
-# and set any options; do chmod last to preserve setuid bits
-
-# If any of these fail, we abort the whole thing. If we want to
-# ignore errors from any of these, just make sure not to ignore
-# errors from the above "$doit $instcmd $src $dsttmp" command.
-
- if [ x"$chowncmd" != x ]; then $doit $chowncmd $dsttmp; else true;fi &&
- if [ x"$chgrpcmd" != x ]; then $doit $chgrpcmd $dsttmp; else true;fi &&
- if [ x"$stripcmd" != x ]; then $doit $stripcmd $dsttmp; else true;fi &&
- if [ x"$chmodcmd" != x ]; then $doit $chmodcmd $dsttmp; else true;fi &&
-
-# Now rename the file to the real destination.
-
- $doit $rmcmd -f $dstdir/$dstfile &&
- $doit $mvcmd $dsttmp $dstdir/$dstfile
-
-fi &&
-
-
-exit 0
diff --git a/scripts/vcs-version.sh b/scripts/vcs-version.sh
index 31fae86..a71fb07 100755
--- a/scripts/vcs-version.sh
+++ b/scripts/vcs-version.sh
@@ -1,4 +1,6 @@
#!/bin/bash
+# See LICENSE.Batten for license details.
+#
#=========================================================================
# vcs-version.sh [options] [src-dir]
#=========================================================================
diff --git a/softfloat/8086/OLD-specialize.c b/softfloat/8086/OLD-specialize.c
index ffb306d..8c73526 100755
--- a/softfloat/8086/OLD-specialize.c
+++ b/softfloat/8086/OLD-specialize.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/8086/OLD-specialize.h b/softfloat/8086/OLD-specialize.h
index 9e4461c..6237315 100755
--- a/softfloat/8086/OLD-specialize.h
+++ b/softfloat/8086/OLD-specialize.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/8086/platform.h b/softfloat/8086/platform.h
index 9355edf..00c2782 100755
--- a/softfloat/8086/platform.h
+++ b/softfloat/8086/platform.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/8086/s_commonNaNToF32UI.c b/softfloat/8086/s_commonNaNToF32UI.c
index 3b96c41..c8fe02b 100755
--- a/softfloat/8086/s_commonNaNToF32UI.c
+++ b/softfloat/8086/s_commonNaNToF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/8086/s_commonNaNToF64UI.c b/softfloat/8086/s_commonNaNToF64UI.c
index 474ceee..d5a01d0 100755
--- a/softfloat/8086/s_commonNaNToF64UI.c
+++ b/softfloat/8086/s_commonNaNToF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/8086/s_f32UIToCommonNaN.c b/softfloat/8086/s_f32UIToCommonNaN.c
index 067e8da..c50937c 100755
--- a/softfloat/8086/s_f32UIToCommonNaN.c
+++ b/softfloat/8086/s_f32UIToCommonNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/8086/s_f64UIToCommonNaN.c b/softfloat/8086/s_f64UIToCommonNaN.c
index f933ded..87a0e0f 100755
--- a/softfloat/8086/s_f64UIToCommonNaN.c
+++ b/softfloat/8086/s_f64UIToCommonNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/8086/s_isSigNaNF32UI.c b/softfloat/8086/s_isSigNaNF32UI.c
index 0a9c33f..80be12c 100755
--- a/softfloat/8086/s_isSigNaNF32UI.c
+++ b/softfloat/8086/s_isSigNaNF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/8086/s_isSigNaNF64UI.c b/softfloat/8086/s_isSigNaNF64UI.c
index d255213..a5fbd2c 100755
--- a/softfloat/8086/s_isSigNaNF64UI.c
+++ b/softfloat/8086/s_isSigNaNF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/8086/s_propagateNaNF32UI.c b/softfloat/8086/s_propagateNaNF32UI.c
index 07774e8..74c7772 100755
--- a/softfloat/8086/s_propagateNaNF32UI.c
+++ b/softfloat/8086/s_propagateNaNF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*** UPDATE COMMENTS. ***/
diff --git a/softfloat/8086/s_propagateNaNF64UI.c b/softfloat/8086/s_propagateNaNF64UI.c
index 0ff6446..335669f 100755
--- a/softfloat/8086/s_propagateNaNF64UI.c
+++ b/softfloat/8086/s_propagateNaNF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*** UPDATE COMMENTS. ***/
diff --git a/softfloat/8086/softfloat_raiseFlags.c b/softfloat/8086/softfloat_raiseFlags.c
index c0c0dc8..1381a3d 100755
--- a/softfloat/8086/softfloat_raiseFlags.c
+++ b/softfloat/8086/softfloat_raiseFlags.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/8086/softfloat_types.h b/softfloat/8086/softfloat_types.h
index b5c1828..f5c2c6b 100755
--- a/softfloat/8086/softfloat_types.h
+++ b/softfloat/8086/softfloat_types.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#ifndef softfloat_types_h
#define softfloat_types_h
diff --git a/softfloat/8086/specialize.h b/softfloat/8086/specialize.h
index ca0bb1d..b5e4620 100755
--- a/softfloat/8086/specialize.h
+++ b/softfloat/8086/specialize.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/f32_add.c b/softfloat/f32_add.c
index dc53d68..fe5f810 100755
--- a/softfloat/f32_add.c
+++ b/softfloat/f32_add.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_classify.c b/softfloat/f32_classify.c
index d16aa25..9c36959 100755
--- a/softfloat/f32_classify.c
+++ b/softfloat/f32_classify.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_div.c b/softfloat/f32_div.c
index 958b140..3bbc126 100755
--- a/softfloat/f32_div.c
+++ b/softfloat/f32_div.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_eq.c b/softfloat/f32_eq.c
index 8f2306b..bb5a05b 100755
--- a/softfloat/f32_eq.c
+++ b/softfloat/f32_eq.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_eq_signaling.c b/softfloat/f32_eq_signaling.c
index bfba48a..38d892f 100755
--- a/softfloat/f32_eq_signaling.c
+++ b/softfloat/f32_eq_signaling.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_isSignalingNaN.c b/softfloat/f32_isSignalingNaN.c
index 09aaa82..36713df 100755
--- a/softfloat/f32_isSignalingNaN.c
+++ b/softfloat/f32_isSignalingNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include "platform.h"
diff --git a/softfloat/f32_le.c b/softfloat/f32_le.c
index 5f47be5..13d5b76 100755
--- a/softfloat/f32_le.c
+++ b/softfloat/f32_le.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_le_quiet.c b/softfloat/f32_le_quiet.c
index 2b541da..6f151bd 100755
--- a/softfloat/f32_le_quiet.c
+++ b/softfloat/f32_le_quiet.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_lt.c b/softfloat/f32_lt.c
index 753b28a..f938240 100755
--- a/softfloat/f32_lt.c
+++ b/softfloat/f32_lt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_lt_quiet.c b/softfloat/f32_lt_quiet.c
index ecd90bf..576f62e 100755
--- a/softfloat/f32_lt_quiet.c
+++ b/softfloat/f32_lt_quiet.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_mul.c b/softfloat/f32_mul.c
index d49c1dd..9962368 100755
--- a/softfloat/f32_mul.c
+++ b/softfloat/f32_mul.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_mulAdd.c b/softfloat/f32_mulAdd.c
index 3d4cee9..aff3d3f 100755
--- a/softfloat/f32_mulAdd.c
+++ b/softfloat/f32_mulAdd.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/f32_rem.c b/softfloat/f32_rem.c
index d29b840..598ee8a 100755
--- a/softfloat/f32_rem.c
+++ b/softfloat/f32_rem.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_roundToInt.c b/softfloat/f32_roundToInt.c
index 9685cfe..8c0cef9 100755
--- a/softfloat/f32_roundToInt.c
+++ b/softfloat/f32_roundToInt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_sqrt.c b/softfloat/f32_sqrt.c
index c9eb907..637f82e 100755
--- a/softfloat/f32_sqrt.c
+++ b/softfloat/f32_sqrt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_sub.c b/softfloat/f32_sub.c
index c64df8e..942937c 100755
--- a/softfloat/f32_sub.c
+++ b/softfloat/f32_sub.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_f64.c b/softfloat/f32_to_f64.c
index 9f0ae5c..374dc9f 100755
--- a/softfloat/f32_to_f64.c
+++ b/softfloat/f32_to_f64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_i32.c b/softfloat/f32_to_i32.c
index 98c67c9..4e07bed 100755
--- a/softfloat/f32_to_i32.c
+++ b/softfloat/f32_to_i32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_i32_r_minMag.c b/softfloat/f32_to_i32_r_minMag.c
index d62677b..024ed69 100755
--- a/softfloat/f32_to_i32_r_minMag.c
+++ b/softfloat/f32_to_i32_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_i64.c b/softfloat/f32_to_i64.c
index 34f877f..522449a 100755
--- a/softfloat/f32_to_i64.c
+++ b/softfloat/f32_to_i64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_i64_r_minMag.c b/softfloat/f32_to_i64_r_minMag.c
index 7d852ae..5931e57 100755
--- a/softfloat/f32_to_i64_r_minMag.c
+++ b/softfloat/f32_to_i64_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_ui32.c b/softfloat/f32_to_ui32.c
index 3501db8..7817377 100755
--- a/softfloat/f32_to_ui32.c
+++ b/softfloat/f32_to_ui32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_ui32_r_minMag.c b/softfloat/f32_to_ui32_r_minMag.c
index 9380d27..7d993de 100755
--- a/softfloat/f32_to_ui32_r_minMag.c
+++ b/softfloat/f32_to_ui32_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_ui64.c b/softfloat/f32_to_ui64.c
index 6cdcf74..a8aaa02 100755
--- a/softfloat/f32_to_ui64.c
+++ b/softfloat/f32_to_ui64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f32_to_ui64_r_minMag.c b/softfloat/f32_to_ui64_r_minMag.c
index 6e54594..ca894cd 100755
--- a/softfloat/f32_to_ui64_r_minMag.c
+++ b/softfloat/f32_to_ui64_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_add.c b/softfloat/f64_add.c
index 9ec4b5f..3e2b8dc 100755
--- a/softfloat/f64_add.c
+++ b/softfloat/f64_add.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_classify.c b/softfloat/f64_classify.c
index 2ec124b..b6ef4dc 100755
--- a/softfloat/f64_classify.c
+++ b/softfloat/f64_classify.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_div.c b/softfloat/f64_div.c
index 9bc72b3..c8eede9 100755
--- a/softfloat/f64_div.c
+++ b/softfloat/f64_div.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_eq.c b/softfloat/f64_eq.c
index 925aabc..3b99036 100755
--- a/softfloat/f64_eq.c
+++ b/softfloat/f64_eq.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_eq_signaling.c b/softfloat/f64_eq_signaling.c
index 7a54dc1..8fd02f4 100755
--- a/softfloat/f64_eq_signaling.c
+++ b/softfloat/f64_eq_signaling.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_isSignalingNaN.c b/softfloat/f64_isSignalingNaN.c
index d720ac1..07d2e8a 100755
--- a/softfloat/f64_isSignalingNaN.c
+++ b/softfloat/f64_isSignalingNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include "platform.h"
diff --git a/softfloat/f64_le.c b/softfloat/f64_le.c
index e6c5caf..8d34088 100755
--- a/softfloat/f64_le.c
+++ b/softfloat/f64_le.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_le_quiet.c b/softfloat/f64_le_quiet.c
index e9b7ede..1685c69 100755
--- a/softfloat/f64_le_quiet.c
+++ b/softfloat/f64_le_quiet.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_lt.c b/softfloat/f64_lt.c
index 1b2f696..14f182f 100755
--- a/softfloat/f64_lt.c
+++ b/softfloat/f64_lt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_lt_quiet.c b/softfloat/f64_lt_quiet.c
index f27e6da..b48e1ee 100755
--- a/softfloat/f64_lt_quiet.c
+++ b/softfloat/f64_lt_quiet.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_mul.c b/softfloat/f64_mul.c
index 4b5dc4e..cdd8c78 100755
--- a/softfloat/f64_mul.c
+++ b/softfloat/f64_mul.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_mulAdd.c b/softfloat/f64_mulAdd.c
index fa1669a..af7c3bb 100755
--- a/softfloat/f64_mulAdd.c
+++ b/softfloat/f64_mulAdd.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/f64_rem.c b/softfloat/f64_rem.c
index 08fcd78..f738e5c 100755
--- a/softfloat/f64_rem.c
+++ b/softfloat/f64_rem.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_roundToInt.c b/softfloat/f64_roundToInt.c
index d70e7e0..9512f59 100755
--- a/softfloat/f64_roundToInt.c
+++ b/softfloat/f64_roundToInt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_sqrt.c b/softfloat/f64_sqrt.c
index cd91010..d446bc4 100755
--- a/softfloat/f64_sqrt.c
+++ b/softfloat/f64_sqrt.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_sub.c b/softfloat/f64_sub.c
index 38bd574..46aaead 100755
--- a/softfloat/f64_sub.c
+++ b/softfloat/f64_sub.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_f32.c b/softfloat/f64_to_f32.c
index 395d6c6..6882e9d 100755
--- a/softfloat/f64_to_f32.c
+++ b/softfloat/f64_to_f32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_i32.c b/softfloat/f64_to_i32.c
index 8259ee2..836d13d 100755
--- a/softfloat/f64_to_i32.c
+++ b/softfloat/f64_to_i32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_i32_r_minMag.c b/softfloat/f64_to_i32_r_minMag.c
index 176bda6..00b270b 100755
--- a/softfloat/f64_to_i32_r_minMag.c
+++ b/softfloat/f64_to_i32_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_i64.c b/softfloat/f64_to_i64.c
index 0e6ddcd..1df5971 100755
--- a/softfloat/f64_to_i64.c
+++ b/softfloat/f64_to_i64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_i64_r_minMag.c b/softfloat/f64_to_i64_r_minMag.c
index 57bb4a9..21faf6e 100755
--- a/softfloat/f64_to_i64_r_minMag.c
+++ b/softfloat/f64_to_i64_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_ui32.c b/softfloat/f64_to_ui32.c
index b186605..c24e7d4 100755
--- a/softfloat/f64_to_ui32.c
+++ b/softfloat/f64_to_ui32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_ui32_r_minMag.c b/softfloat/f64_to_ui32_r_minMag.c
index c549f2d..0c4171f 100755
--- a/softfloat/f64_to_ui32_r_minMag.c
+++ b/softfloat/f64_to_ui32_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_ui64.c b/softfloat/f64_to_ui64.c
index 9afebd7..969fa07 100755
--- a/softfloat/f64_to_ui64.c
+++ b/softfloat/f64_to_ui64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/f64_to_ui64_r_minMag.c b/softfloat/f64_to_ui64_r_minMag.c
index 8ef0924..cb5d448 100755
--- a/softfloat/f64_to_ui64_r_minMag.c
+++ b/softfloat/f64_to_ui64_r_minMag.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/i32_to_f32.c b/softfloat/i32_to_f32.c
index f51facd..1adad16 100755
--- a/softfloat/i32_to_f32.c
+++ b/softfloat/i32_to_f32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/i32_to_f64.c b/softfloat/i32_to_f64.c
index d42cbe8..c8b0811 100755
--- a/softfloat/i32_to_f64.c
+++ b/softfloat/i32_to_f64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/i64_to_f32.c b/softfloat/i64_to_f32.c
index 4fecbb9..6b2d2b8 100755
--- a/softfloat/i64_to_f32.c
+++ b/softfloat/i64_to_f32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/i64_to_f64.c b/softfloat/i64_to_f64.c
index 1add960..2e26cf7 100755
--- a/softfloat/i64_to_f64.c
+++ b/softfloat/i64_to_f64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/internals.h b/softfloat/internals.h
index ea18618..eabc81f 100755
--- a/softfloat/internals.h
+++ b/softfloat/internals.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*** UPDATE COMMENTS. ***/
diff --git a/softfloat/platform.h b/softfloat/platform.h
index 6c54313..8fcccf2 100755
--- a/softfloat/platform.h
+++ b/softfloat/platform.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/primitives.h b/softfloat/primitives.h
index 71038ea..55e4427 100755
--- a/softfloat/primitives.h
+++ b/softfloat/primitives.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/s_add128.c b/softfloat/s_add128.c
index 59c0348..ba27db7 100755
--- a/softfloat/s_add128.c
+++ b/softfloat/s_add128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_add192.c b/softfloat/s_add192.c
index 543eb5d..06a4a93 100755
--- a/softfloat/s_add192.c
+++ b/softfloat/s_add192.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_addMagsF32.c b/softfloat/s_addMagsF32.c
index f361e2b..c968bc6 100755
--- a/softfloat/s_addMagsF32.c
+++ b/softfloat/s_addMagsF32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_addMagsF64.c b/softfloat/s_addMagsF64.c
index a81c3e4..d2a5686 100755
--- a/softfloat/s_addMagsF64.c
+++ b/softfloat/s_addMagsF64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_commonNaNToF32UI.c b/softfloat/s_commonNaNToF32UI.c
index 61f2735..ada69d1 100755
--- a/softfloat/s_commonNaNToF32UI.c
+++ b/softfloat/s_commonNaNToF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_commonNaNToF64UI.c b/softfloat/s_commonNaNToF64UI.c
index da36c04..a34adcf 100755
--- a/softfloat/s_commonNaNToF64UI.c
+++ b/softfloat/s_commonNaNToF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_countLeadingZeros32.c b/softfloat/s_countLeadingZeros32.c
index 0bd17e1..b1e1023 100755
--- a/softfloat/s_countLeadingZeros32.c
+++ b/softfloat/s_countLeadingZeros32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "primitives.h"
diff --git a/softfloat/s_countLeadingZeros64.c b/softfloat/s_countLeadingZeros64.c
index 79f4280..dbaff4f 100755
--- a/softfloat/s_countLeadingZeros64.c
+++ b/softfloat/s_countLeadingZeros64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "primitives.h"
diff --git a/softfloat/s_countLeadingZeros8.c b/softfloat/s_countLeadingZeros8.c
index 4eca7e9..2dc8434 100755
--- a/softfloat/s_countLeadingZeros8.c
+++ b/softfloat/s_countLeadingZeros8.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_eq128.c b/softfloat/s_eq128.c
index 7261dc4..90281e3 100755
--- a/softfloat/s_eq128.c
+++ b/softfloat/s_eq128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_estimateDiv128To64.c b/softfloat/s_estimateDiv128To64.c
index f8610a2..49608bc 100755
--- a/softfloat/s_estimateDiv128To64.c
+++ b/softfloat/s_estimateDiv128To64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_estimateSqrt32.c b/softfloat/s_estimateSqrt32.c
index e22a9dc..7fb9c03 100755
--- a/softfloat/s_estimateSqrt32.c
+++ b/softfloat/s_estimateSqrt32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_f32UIToCommonNaN.c b/softfloat/s_f32UIToCommonNaN.c
index 9ee0db9..f30ec83 100755
--- a/softfloat/s_f32UIToCommonNaN.c
+++ b/softfloat/s_f32UIToCommonNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_f64UIToCommonNaN.c b/softfloat/s_f64UIToCommonNaN.c
index 84d8ca0..f5dace2 100755
--- a/softfloat/s_f64UIToCommonNaN.c
+++ b/softfloat/s_f64UIToCommonNaN.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_isSigNaNF32UI.c b/softfloat/s_isSigNaNF32UI.c
index 0a9c33f..80be12c 100755
--- a/softfloat/s_isSigNaNF32UI.c
+++ b/softfloat/s_isSigNaNF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_isSigNaNF64UI.c b/softfloat/s_isSigNaNF64UI.c
index d255213..a5fbd2c 100755
--- a/softfloat/s_isSigNaNF64UI.c
+++ b/softfloat/s_isSigNaNF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_le128.c b/softfloat/s_le128.c
index 83b1d7f..a9ec01e 100755
--- a/softfloat/s_le128.c
+++ b/softfloat/s_le128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_lt128.c b/softfloat/s_lt128.c
index 33a3df4..53018ba 100755
--- a/softfloat/s_lt128.c
+++ b/softfloat/s_lt128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_mul128By64To192.c b/softfloat/s_mul128By64To192.c
index dfa8825..1251500 100755
--- a/softfloat/s_mul128By64To192.c
+++ b/softfloat/s_mul128By64To192.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_mul128To256.c b/softfloat/s_mul128To256.c
index a96cd94..b1acfe9 100755
--- a/softfloat/s_mul128To256.c
+++ b/softfloat/s_mul128To256.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_mul64To128.c b/softfloat/s_mul64To128.c
index c17780b..e815928 100755
--- a/softfloat/s_mul64To128.c
+++ b/softfloat/s_mul64To128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_mulAddF32.c b/softfloat/s_mulAddF32.c
index e55a0ba..83c3458 100755
--- a/softfloat/s_mulAddF32.c
+++ b/softfloat/s_mulAddF32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_mulAddF64.c b/softfloat/s_mulAddF64.c
index 70296bc..d7aab8a 100755
--- a/softfloat/s_mulAddF64.c
+++ b/softfloat/s_mulAddF64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_normRoundPackToF32.c b/softfloat/s_normRoundPackToF32.c
index 2e6f4b0..36af4de 100755
--- a/softfloat/s_normRoundPackToF32.c
+++ b/softfloat/s_normRoundPackToF32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_normRoundPackToF64.c b/softfloat/s_normRoundPackToF64.c
index 64dced4..82f5513 100755
--- a/softfloat/s_normRoundPackToF64.c
+++ b/softfloat/s_normRoundPackToF64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_normSubnormalF32Sig.c b/softfloat/s_normSubnormalF32Sig.c
index b98eb86..3993193 100755
--- a/softfloat/s_normSubnormalF32Sig.c
+++ b/softfloat/s_normSubnormalF32Sig.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_normSubnormalF64Sig.c b/softfloat/s_normSubnormalF64Sig.c
index 45a7c9e..8d078cf 100755
--- a/softfloat/s_normSubnormalF64Sig.c
+++ b/softfloat/s_normSubnormalF64Sig.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_propagateNaNF32UI.c b/softfloat/s_propagateNaNF32UI.c
index d8738d1..e1325b7 100755
--- a/softfloat/s_propagateNaNF32UI.c
+++ b/softfloat/s_propagateNaNF32UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*** UPDATE COMMENTS. ***/
diff --git a/softfloat/s_propagateNaNF64UI.c b/softfloat/s_propagateNaNF64UI.c
index 871989d..bb6bb6e 100755
--- a/softfloat/s_propagateNaNF64UI.c
+++ b/softfloat/s_propagateNaNF64UI.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*** UPDATE COMMENTS. ***/
diff --git a/softfloat/s_roundPackToF32.c b/softfloat/s_roundPackToF32.c
index 578ae43..a6f4231 100755
--- a/softfloat/s_roundPackToF32.c
+++ b/softfloat/s_roundPackToF32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_roundPackToF64.c b/softfloat/s_roundPackToF64.c
index 47d438d..a5fd9eb 100755
--- a/softfloat/s_roundPackToF64.c
+++ b/softfloat/s_roundPackToF64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_roundPackToI32.c b/softfloat/s_roundPackToI32.c
index 6f63a3b..c106c6f 100755
--- a/softfloat/s_roundPackToI32.c
+++ b/softfloat/s_roundPackToI32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_roundPackToI64.c b/softfloat/s_roundPackToI64.c
index c6085e5..66f317f 100755
--- a/softfloat/s_roundPackToI64.c
+++ b/softfloat/s_roundPackToI64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_roundPackToUI32.c b/softfloat/s_roundPackToUI32.c
index 4465106..2b4d8cc 100755
--- a/softfloat/s_roundPackToUI32.c
+++ b/softfloat/s_roundPackToUI32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_roundPackToUI64.c b/softfloat/s_roundPackToUI64.c
index dc9992b..621170c 100755
--- a/softfloat/s_roundPackToUI64.c
+++ b/softfloat/s_roundPackToUI64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_shift128ExtraRightJam.c b/softfloat/s_shift128ExtraRightJam.c
index 6c57974..63250c4 100755
--- a/softfloat/s_shift128ExtraRightJam.c
+++ b/softfloat/s_shift128ExtraRightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shift128RightJam.c b/softfloat/s_shift128RightJam.c
index 5a4e188..0bd36a1 100755
--- a/softfloat/s_shift128RightJam.c
+++ b/softfloat/s_shift128RightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shift32RightJam.c b/softfloat/s_shift32RightJam.c
index b697a34..3343cac 100755
--- a/softfloat/s_shift32RightJam.c
+++ b/softfloat/s_shift32RightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shift64ExtraRightJam.c b/softfloat/s_shift64ExtraRightJam.c
index 167ea54..ab1bdc7 100755
--- a/softfloat/s_shift64ExtraRightJam.c
+++ b/softfloat/s_shift64ExtraRightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shift64RightJam.c b/softfloat/s_shift64RightJam.c
index ebebb61..a21ec5b 100755
--- a/softfloat/s_shift64RightJam.c
+++ b/softfloat/s_shift64RightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift128ExtraRightJam.c b/softfloat/s_shortShift128ExtraRightJam.c
index c772740..cd2d771 100755
--- a/softfloat/s_shortShift128ExtraRightJam.c
+++ b/softfloat/s_shortShift128ExtraRightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift128Left.c b/softfloat/s_shortShift128Left.c
index 9c29988..e09c4fe 100755
--- a/softfloat/s_shortShift128Left.c
+++ b/softfloat/s_shortShift128Left.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift128Right.c b/softfloat/s_shortShift128Right.c
index f7f4ce8..e5ea6fe 100755
--- a/softfloat/s_shortShift128Right.c
+++ b/softfloat/s_shortShift128Right.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift192Left.c b/softfloat/s_shortShift192Left.c
index cf1e55d..ea1c8ce 100755
--- a/softfloat/s_shortShift192Left.c
+++ b/softfloat/s_shortShift192Left.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift32Right1Jam.c b/softfloat/s_shortShift32Right1Jam.c
index db4c304..f43c1fc 100755
--- a/softfloat/s_shortShift32Right1Jam.c
+++ b/softfloat/s_shortShift32Right1Jam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift64ExtraRightJam.c b/softfloat/s_shortShift64ExtraRightJam.c
index b861c67..9ff60de 100755
--- a/softfloat/s_shortShift64ExtraRightJam.c
+++ b/softfloat/s_shortShift64ExtraRightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_shortShift64RightJam.c b/softfloat/s_shortShift64RightJam.c
index 0da6c93..623eda3 100755
--- a/softfloat/s_shortShift64RightJam.c
+++ b/softfloat/s_shortShift64RightJam.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_sub128.c b/softfloat/s_sub128.c
index 0c4f181..31ef9f3 100755
--- a/softfloat/s_sub128.c
+++ b/softfloat/s_sub128.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_sub192.c b/softfloat/s_sub192.c
index 96f21c9..a2ded04 100755
--- a/softfloat/s_sub192.c
+++ b/softfloat/s_sub192.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/s_subMagsF32.c b/softfloat/s_subMagsF32.c
index 0c83b02..da3a706 100755
--- a/softfloat/s_subMagsF32.c
+++ b/softfloat/s_subMagsF32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/s_subMagsF64.c b/softfloat/s_subMagsF64.c
index 45b81ba..b515d77 100755
--- a/softfloat/s_subMagsF64.c
+++ b/softfloat/s_subMagsF64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdbool.h>
#include <stdint.h>
diff --git a/softfloat/softfloat.h b/softfloat/softfloat.h
index 5d812af..a1847be 100755
--- a/softfloat/softfloat.h
+++ b/softfloat/softfloat.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#ifndef softfloat_h
#define softfloat_h
diff --git a/softfloat/softfloat.mk.in b/softfloat/softfloat.mk.in
index b9b4253..36ae137 100644
--- a/softfloat/softfloat.mk.in
+++ b/softfloat/softfloat.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
softfloat_hdrs = \
internals.h \
primitives.h \
diff --git a/softfloat/softfloat_raiseFlags.c b/softfloat/softfloat_raiseFlags.c
index c0c0dc8..1381a3d 100755
--- a/softfloat/softfloat_raiseFlags.c
+++ b/softfloat/softfloat_raiseFlags.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
/*============================================================================
diff --git a/softfloat/softfloat_types.h b/softfloat/softfloat_types.h
index 215f5e3..f9e9d9a 100755
--- a/softfloat/softfloat_types.h
+++ b/softfloat/softfloat_types.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#ifndef softfloat_types_h
#define softfloat_types_h
diff --git a/softfloat/specialize.h b/softfloat/specialize.h
index 12668ef..01394b0 100755
--- a/softfloat/specialize.h
+++ b/softfloat/specialize.h
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#ifndef _softfloat_specialize_h
#define _softfloat_specialize_h
diff --git a/softfloat/ui32_to_f32.c b/softfloat/ui32_to_f32.c
index ba0fc1a..c974a5c 100755
--- a/softfloat/ui32_to_f32.c
+++ b/softfloat/ui32_to_f32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/ui32_to_f64.c b/softfloat/ui32_to_f64.c
index d0bd177..b93ddf7 100755
--- a/softfloat/ui32_to_f64.c
+++ b/softfloat/ui32_to_f64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/ui64_to_f32.c b/softfloat/ui64_to_f32.c
index 82afbdc..bf56e87 100755
--- a/softfloat/ui64_to_f32.c
+++ b/softfloat/ui64_to_f32.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/softfloat/ui64_to_f64.c b/softfloat/ui64_to_f64.c
index 52c158b..f47480f 100755
--- a/softfloat/ui64_to_f64.c
+++ b/softfloat/ui64_to_f64.c
@@ -1,3 +1,5 @@
+// See LICENSE.SoftFloat for license details.
+
#include <stdint.h>
#include "platform.h"
diff --git a/util/string.c b/util/string.c
index 41855c2..615c325 100644
--- a/util/string.c
+++ b/util/string.c
@@ -1,3 +1,5 @@
+// See LICENSE for license details.
+
#include <string.h>
#include <stdint.h>
#include <ctype.h>
diff --git a/util/util.mk.in b/util/util.mk.in
index abbdbd1..84ac75b 100644
--- a/util/util.mk.in
+++ b/util/util.mk.in
@@ -1,3 +1,5 @@
+# See LICENSE for license details.
+
util_subproject_deps = \
util_hdrs = \