summaryrefslogtreecommitdiff
path: root/misc
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2016-05-25 12:06:29 -0700
committerH. Peter Anvin <hpa@zytor.com>2016-05-25 12:06:29 -0700
commite1f985c167495185c55c46e640f2607604597383 (patch)
tree3ddd11d12e6a3bf6e21c39d1342175d5488d8d39 /misc
parent22538e2b6713d6e4e05fb82c6969320a519b4c93 (diff)
downloadnasm-e1f985c167495185c55c46e640f2607604597383.tar.gz
Reorganize the source code into subdirectories
Make the source code easier to understand and keep track of by organizing it into subdirectories depending on the function. Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Diffstat (limited to 'misc')
-rwxr-xr-xmisc/cleanfile176
-rwxr-xr-xmisc/cleanpatch258
-rwxr-xr-xmisc/makedist.sh71
-rwxr-xr-xmisc/release101
-rwxr-xr-xmisc/tag-release58
5 files changed, 0 insertions, 664 deletions
diff --git a/misc/cleanfile b/misc/cleanfile
deleted file mode 100755
index cefd29e5..00000000
--- a/misc/cleanfile
+++ /dev/null
@@ -1,176 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Clean a text file -- or directory of text files -- of stealth whitespace.
-# WARNING: this can be a highly destructive operation. Use with caution.
-#
-
-use bytes;
-use File::Basename;
-
-# Default options
-$max_width = 79;
-
-# Clean up space-tab sequences, either by removing spaces or
-# replacing them with tabs.
-sub clean_space_tabs($)
-{
- no bytes; # Tab alignment depends on characters
-
- my($li) = @_;
- my($lo) = '';
- my $pos = 0;
- my $nsp = 0;
- my($i, $c);
-
- for ($i = 0; $i < length($li); $i++) {
- $c = substr($li, $i, 1);
- if ($c eq "\t") {
- my $npos = ($pos+$nsp+8) & ~7;
- my $ntab = ($npos >> 3) - ($pos >> 3);
- $lo .= "\t" x $ntab;
- $pos = $npos;
- $nsp = 0;
- } elsif ($c eq "\n" || $c eq "\r") {
- $lo .= " " x $nsp;
- $pos += $nsp;
- $nsp = 0;
- $lo .= $c;
- $pos = 0;
- } elsif ($c eq " ") {
- $nsp++;
- } else {
- $lo .= " " x $nsp;
- $pos += $nsp;
- $nsp = 0;
- $lo .= $c;
- $pos++;
- }
- }
- $lo .= " " x $nsp;
- return $lo;
-}
-
-# Compute the visual width of a string
-sub strwidth($) {
- no bytes; # Tab alignment depends on characters
-
- my($li) = @_;
- my($c, $i);
- my $pos = 0;
- my $mlen = 0;
-
- for ($i = 0; $i < length($li); $i++) {
- $c = substr($li,$i,1);
- if ($c eq "\t") {
- $pos = ($pos+8) & ~7;
- } elsif ($c eq "\n") {
- $mlen = $pos if ($pos > $mlen);
- $pos = 0;
- } else {
- $pos++;
- }
- }
-
- $mlen = $pos if ($pos > $mlen);
- return $mlen;
-}
-
-$name = basename($0);
-
-@files = ();
-
-while (defined($a = shift(@ARGV))) {
- if ($a =~ /^-/) {
- if ($a eq '-width' || $a eq '-w') {
- $max_width = shift(@ARGV)+0;
- } else {
- print STDERR "Usage: $name [-width #] files...\n";
- exit 1;
- }
- } else {
- push(@files, $a);
- }
-}
-
-foreach $f ( @files ) {
- print STDERR "$name: $f\n";
-
- if (! -f $f) {
- print STDERR "$f: not a file\n";
- next;
- }
-
- if (!open(FILE, '+<', $f)) {
- print STDERR "$name: Cannot open file: $f: $!\n";
- next;
- }
-
- binmode FILE;
-
- # First, verify that it is not a binary file; consider any file
- # with a zero byte to be a binary file. Is there any better, or
- # additional, heuristic that should be applied?
- $is_binary = 0;
-
- while (read(FILE, $data, 65536) > 0) {
- if ($data =~ /\0/) {
- $is_binary = 1;
- last;
- }
- }
-
- if ($is_binary) {
- print STDERR "$name: $f: binary file\n";
- next;
- }
-
- seek(FILE, 0, 0);
-
- $in_bytes = 0;
- $out_bytes = 0;
- $blank_bytes = 0;
-
- @blanks = ();
- @lines = ();
- $lineno = 0;
-
- while ( defined($line = <FILE>) ) {
- $lineno++;
- $in_bytes += length($line);
- $line =~ s/[ \t\r]*$//; # Remove trailing spaces
- $line = clean_space_tabs($line);
-
- if ( $line eq "\n" ) {
- push(@blanks, $line);
- $blank_bytes += length($line);
- } else {
- push(@lines, @blanks);
- $out_bytes += $blank_bytes;
- push(@lines, $line);
- $out_bytes += length($line);
- @blanks = ();
- $blank_bytes = 0;
- }
-
- $l_width = strwidth($line);
- if ($max_width && $l_width > $max_width) {
- print STDERR
- "$f:$lineno: line exceeds $max_width characters ($l_width)\n";
- }
- }
-
- # Any blanks at the end of the file are discarded
-
- if ($in_bytes != $out_bytes) {
- # Only write to the file if changed
- seek(FILE, 0, 0);
- print FILE @lines;
-
- if ( !defined($where = tell(FILE)) ||
- !truncate(FILE, $where) ) {
- die "$name: Failed to truncate modified file: $f: $!\n";
- }
- }
-
- close(FILE);
-}
diff --git a/misc/cleanpatch b/misc/cleanpatch
deleted file mode 100755
index 9680d03a..00000000
--- a/misc/cleanpatch
+++ /dev/null
@@ -1,258 +0,0 @@
-#!/usr/bin/perl -w
-#
-# Clean a patch file -- or directory of patch files -- of stealth whitespace.
-# WARNING: this can be a highly destructive operation. Use with caution.
-#
-
-use bytes;
-use File::Basename;
-
-# Default options
-$max_width = 79;
-
-# Clean up space-tab sequences, either by removing spaces or
-# replacing them with tabs.
-sub clean_space_tabs($)
-{
- no bytes; # Tab alignment depends on characters
-
- my($li) = @_;
- my($lo) = '';
- my $pos = 0;
- my $nsp = 0;
- my($i, $c);
-
- for ($i = 0; $i < length($li); $i++) {
- $c = substr($li, $i, 1);
- if ($c eq "\t") {
- my $npos = ($pos+$nsp+8) & ~7;
- my $ntab = ($npos >> 3) - ($pos >> 3);
- $lo .= "\t" x $ntab;
- $pos = $npos;
- $nsp = 0;
- } elsif ($c eq "\n" || $c eq "\r") {
- $lo .= " " x $nsp;
- $pos += $nsp;
- $nsp = 0;
- $lo .= $c;
- $pos = 0;
- } elsif ($c eq " ") {
- $nsp++;
- } else {
- $lo .= " " x $nsp;
- $pos += $nsp;
- $nsp = 0;
- $lo .= $c;
- $pos++;
- }
- }
- $lo .= " " x $nsp;
- return $lo;
-}
-
-# Compute the visual width of a string
-sub strwidth($) {
- no bytes; # Tab alignment depends on characters
-
- my($li) = @_;
- my($c, $i);
- my $pos = 0;
- my $mlen = 0;
-
- for ($i = 0; $i < length($li); $i++) {
- $c = substr($li,$i,1);
- if ($c eq "\t") {
- $pos = ($pos+8) & ~7;
- } elsif ($c eq "\n") {
- $mlen = $pos if ($pos > $mlen);
- $pos = 0;
- } else {
- $pos++;
- }
- }
-
- $mlen = $pos if ($pos > $mlen);
- return $mlen;
-}
-
-$name = basename($0);
-
-@files = ();
-
-while (defined($a = shift(@ARGV))) {
- if ($a =~ /^-/) {
- if ($a eq '-width' || $a eq '-w') {
- $max_width = shift(@ARGV)+0;
- } else {
- print STDERR "Usage: $name [-width #] files...\n";
- exit 1;
- }
- } else {
- push(@files, $a);
- }
-}
-
-foreach $f ( @files ) {
- print STDERR "$name: $f\n";
-
- if (! -f $f) {
- print STDERR "$f: not a file\n";
- next;
- }
-
- if (!open(FILE, '+<', $f)) {
- print STDERR "$name: Cannot open file: $f: $!\n";
- next;
- }
-
- binmode FILE;
-
- # First, verify that it is not a binary file; consider any file
- # with a zero byte to be a binary file. Is there any better, or
- # additional, heuristic that should be applied?
- $is_binary = 0;
-
- while (read(FILE, $data, 65536) > 0) {
- if ($data =~ /\0/) {
- $is_binary = 1;
- last;
- }
- }
-
- if ($is_binary) {
- print STDERR "$name: $f: binary file\n";
- next;
- }
-
- seek(FILE, 0, 0);
-
- $in_bytes = 0;
- $out_bytes = 0;
- $lineno = 0;
-
- @lines = ();
-
- $in_hunk = 0;
- $err = 0;
-
- while ( defined($line = <FILE>) ) {
- $lineno++;
- $in_bytes += length($line);
-
- if (!$in_hunk) {
- if ($line =~
- /^\@\@\s+\-([0-9]+),([0-9]+)\s+\+([0-9]+),([0-9]+)\s\@\@/) {
- $minus_lines = $2;
- $plus_lines = $4;
- if ($minus_lines || $plus_lines) {
- $in_hunk = 1;
- @hunk_lines = ($line);
- }
- } else {
- push(@lines, $line);
- $out_bytes += length($line);
- }
- } else {
- # We're in a hunk
-
- if ($line =~ /^\+/) {
- $plus_lines--;
-
- $text = substr($line, 1);
- $text =~ s/[ \t\r]*$//; # Remove trailing spaces
- $text = clean_space_tabs($text);
-
- $l_width = strwidth($text);
- if ($max_width && $l_width > $max_width) {
- print STDERR
- "$f:$lineno: adds line exceeds $max_width ",
- "characters ($l_width)\n";
- }
-
- push(@hunk_lines, '+'.$text);
- } elsif ($line =~ /^\-/) {
- $minus_lines--;
- push(@hunk_lines, $line);
- } elsif ($line =~ /^ /) {
- $plus_lines--;
- $minus_lines--;
- push(@hunk_lines, $line);
- } else {
- print STDERR "$name: $f: malformed patch\n";
- $err = 1;
- last;
- }
-
- if ($plus_lines < 0 || $minus_lines < 0) {
- print STDERR "$name: $f: malformed patch\n";
- $err = 1;
- last;
- } elsif ($plus_lines == 0 && $minus_lines == 0) {
- # End of a hunk. Process this hunk.
- my $i;
- my $l;
- my @h = ();
- my $adj = 0;
- my $done = 0;
-
- for ($i = scalar(@hunk_lines)-1; $i > 0; $i--) {
- $l = $hunk_lines[$i];
- if (!$done && $l eq "+\n") {
- $adj++; # Skip this line
- } elsif ($l =~ /^[ +]/) {
- $done = 1;
- unshift(@h, $l);
- } else {
- unshift(@h, $l);
- }
- }
-
- $l = $hunk_lines[0]; # Hunk header
- undef @hunk_lines; # Free memory
-
- if ($adj) {
- die unless
- ($l =~ /^\@\@\s+\-([0-9]+),([0-9]+)\s+\+([0-9]+),([0-9]+)\s\@\@(.*)$/);
- my $mstart = $1;
- my $mlin = $2;
- my $pstart = $3;
- my $plin = $4;
- my $tail = $5; # doesn't include the final newline
-
- $l = sprintf("@@ -%d,%d +%d,%d @@%s\n",
- $mstart, $mlin, $pstart, $plin-$adj,
- $tail);
- }
- unshift(@h, $l);
-
- # Transfer to the output array
- foreach $l (@h) {
- $out_bytes += length($l);
- push(@lines, $l);
- }
-
- $in_hunk = 0;
- }
- }
- }
-
- if ($in_hunk) {
- print STDERR "$name: $f: malformed patch\n";
- $err = 1;
- }
-
- if (!$err) {
- if ($in_bytes != $out_bytes) {
- # Only write to the file if changed
- seek(FILE, 0, 0);
- print FILE @lines;
-
- if ( !defined($where = tell(FILE)) ||
- !truncate(FILE, $where) ) {
- die "$name: Failed to truncate modified file: $f: $!\n";
- }
- }
- }
-
- close(FILE);
-}
diff --git a/misc/makedist.sh b/misc/makedist.sh
deleted file mode 100755
index 3027196a..00000000
--- a/misc/makedist.sh
+++ /dev/null
@@ -1,71 +0,0 @@
-#!/bin/sh
-# * THIS SCRIPT IS OBSOLETE DO NOT USE *
-
-MAJORVER=`grep NASM_MAJOR_VER nasm.h | head -1 | cut -f3 -d' '`
-MINORVER=`grep NASM_MINOR_VER nasm.h | head -1 | cut -f3 -d' '`
-VERSION=`grep NASM_VER nasm.h | head -1 | cut -f3 -d' ' | sed s/\"//g`
-DOSVERSION="${MAJORVER}${MINORVER}"
-NASM_TAR_GZ=dist/nasm-${VERSION}.tar.gz
-NASM_ZIP=dist/nasm${DOSVERSION}s.zip
-NASM_DOS_ZIP=dist/nasm${DOSVERSION}.zip
-NASM_DOC_ZIP=dist/nasm${DOSVERSION}d.zip
-
-if [ -d dist ]; then rm -rf dist; fi
-if [ -d nasm-${VERSION} ]; then rm -rf nasm-${VERSION}; fi
-if [ ! -d dist ]; then mkdir dist; fi
-if [ -f dist/nasm.tar.gz ]; then rm dist/nasm.tar.gz; fi
-mkdir nasm-${VERSION}
-(cd nasm-${VERSION}; ln -s ../* .;
- rm -f nasm-${VERSION} dist Checklist GNUmakefile)
-find nasm-${VERSION}/ -follow -name GNUmakefile > tar-exclude
-find nasm-${VERSION}/ -follow -name RCS >> tar-exclude
-find nasm-${VERSION}/ -follow -name '*.exe' >> tar-exclude
-find nasm-${VERSION}/ -follow -name '*.uu' >> tar-exclude
-find nasm-${VERSION}/ -follow -name '*,v' >> tar-exclude
-for i in nasm-${VERSION}/doc/{nasmdoc.hpj,nasmdoc.rtf,nasmdoc.texi,Readme};
- do echo $i; done >> tar-exclude
-tar chvfX dist/nasm-${VERSION}.tar tar-exclude nasm-${VERSION}
-rm -f tar-exclude
-tar tf dist/nasm-${VERSION}.tar | (echo nasm.doc; sed \
- -e 's:^nasm-[^/]*/::' \
- -e 's:/$::' \
- -e '/install-sh/d' \
- -e '/makedist\.sh/d' \
- -e '/exasm\.zip/d' \
- -e '/config/d' \
- -e '/doc\/.*\.html/d' \
- -e '/doc\/Readme/d' \
- -e '/doc\/nasmdoc\.ps/d' \
- -e '/doc\/nasmdoc\.txt/d' \
- -e '/doc\/nasmdoc\.rtf/d' \
- -e '/doc\/nasmdoc\.hpj/d' \
- -e '/doc\/nasmdoc\.texi/d' \
- -e '/doc\/nasmdoc\.hlp/d' \
- -e '/doc\/nasm\.info/d' \
- ) | sort > zipfiles
-sed \
- -e '/^[^\/]*\.\(c\|h\|pl\|bas\|dat\)$/d' \
- -e '/^doc\(\/.*\)\?/d' \
- -e '/standard\.mac/d' \
- -e '/Makefile/d' \
- -e '/rdoff/d' \
- < zipfiles > zipfiles.dos
-gzip -9 dist/nasm-${VERSION}.tar
-rm -rf nasm-${VERSION}
-ln -s doc/nasmdoc.src nasm.doc
-zip -l -k ${NASM_ZIP} `cat zipfiles`
-zip -k ${NASM_ZIP} *.exe misc/exasm.zip
-zip -l -k ${NASM_DOS_ZIP} `cat zipfiles.dos`
-zip -k ${NASM_DOS_ZIP} *.exe misc/exasm.zip
-rm -f nasm.doc
-(cd doc; zip -l -k ../${NASM_DOC_ZIP} \
- Readme \
- nasmdoc.src rdsrc.pl inslist.pl \
- nasmdoc.txt \
- nasmdoc.ps \
- *.html
- zip -k ../${NASM_DOC_ZIP} \
- nasmdoc.hlp \
- nasm.info)
-rm -f zipfiles zipfiles.dos
-echo Distributions complete.
diff --git a/misc/release b/misc/release
deleted file mode 100755
index 14e750a6..00000000
--- a/misc/release
+++ /dev/null
@@ -1,101 +0,0 @@
-#!/bin/bash -xe
-#
-# Generate a NASM release
-#
-# Usage: release version [destination]
-#
-
-version="$1"
-if [ -z "$1" ]; then
- echo "Usage: $0 version [destination]" 1>&2
- exit 1
-fi
-
-WHERE="$2"
-if [ -z "$WHERE" ]; then
- WHERE=/var/tmp
-fi
-
-if [ -n "$GIT_DIR" ]; then
- HERE="$GIT_DIR"
-else
- HERE=`pwd`
-fi
-
-if [ x`cat version` != x"${version}" ]; then
- echo "${version}" > version
- git update-index version
- git commit -m "Version ${version}" -- version
-fi
-git tag -m "NASM version ${version}" -f "nasm-${version}"
-
-cd "$WHERE"
-rm -rf nasm-release.*
-work=nasm-release.$$
-mkdir $work
-cd $work
-unset GIT_DIR
-git clone -s -l "$HERE" nasm
-rm -rf nasm/.git nasm/.gitignore
-
-# Create files which are in the release but automatically generated
-cd nasm
-./autogen.sh
-./configure --prefix=/usr/local
-make perlreq spec manpages
-make alldeps
-make distclean
-cd ..
-
-# Clean up any previous attempt
-rm -f ../nasm-"$version".tar.gz ../nasm-"$version"-xdoc.tar.gz
-rm -f ../nasm-"$version".tar.bz2 ../nasm-"$version"-xdoc.tar.bz2
-rm -f ../nasm-"$version".tar.xz ../nasm-"$version"-xdoc.tar.xz
-rm -f ../nasm-"$version".zip ../nasm-"$version"-xdoc.zip
-
-# Create tarfile (Unix convention: file includes prefix)
-mv nasm nasm-"$version"
-tar cvvf nasm-"$version".tar nasm-"$version"
-xz -9ek nasm-"$version".tar
-bzip2 -9k nasm-"$version".tar
-gzip -9 nasm-"$version".tar
-mv nasm-"$version".tar.gz nasm-"$version".tar.bz2 nasm-"$version".tar.xz ..
-
-# Create zipfile (DOS convention: no prefix, convert file endings)
-cd nasm-"$version"
-zip -9Dlr ../../nasm-"$version".zip * -x \*.jpg -x \*.zip -x \*.ico # Text files
-zip -9Dgr ../../nasm-"$version".zip * -i \*.jpg -i \*.zip -i \*.ico # Binary files
-cd ..
-
-# Record what we have already generated
-find nasm-"$version" -not -type d -print > main
-
-# Create documentation
-cd nasm-"$version"
-./configure --prefix=/usr/local
-make doc
-# Remove intermediate files.
-make cleaner
-cd ..
-
-# Remove non-documentation
-cat main | xargs rm -f
-# Delete empty subdirectories
-find nasm-"$version"/doc -type d -exec rmdir '{}' \; 2>/dev/null || true
-
-# Create doc tarfile
-tar cvvf nasm-"$version"-xdoc.tar nasm-"$version"/doc
-xz -9ek nasm-"$version"-xdoc.tar
-bzip2 -9k nasm-"$version"-xdoc.tar
-gzip -9 nasm-"$version"-xdoc.tar
-mv nasm-"$version"-xdoc.tar.gz nasm-"$version"-xdoc.tar.bz2 nasm-"$version"-xdoc.tar.xz ..
-
-# Create doc zipfile (DOS convention: no prefix, convert file endings)
-# (Note: generating Win .hlp files requires additional tools)
-cd nasm-"$version"
-zip -9Dlr ../../nasm-"$version"-xdoc.zip doc -x \*.pdf -x \*.info\*
-zip -9Dgr ../../nasm-"$version"-xdoc.zip doc -i \*.pdf -i \*.info\*
-
-# Clean up
-cd ../..
-rm -rf "$work"
diff --git a/misc/tag-release b/misc/tag-release
deleted file mode 100755
index 9e3a0bd0..00000000
--- a/misc/tag-release
+++ /dev/null
@@ -1,58 +0,0 @@
-#!/bin/sh
-
-version=""
-repo=""
-branch=""
-push=0
-
-for opt; do
- case "$opt" in
- --ver=*)
- version=`echo $opt | sed 's/[-a-zA-Z0-9]*=//'`
- ;;
- --repo=*)
- repo=`echo $opt | sed 's/[-a-zA-Z0-9]*=//'`
- ;;
- --branch=*)
- branch=`echo $opt | sed 's/[-a-zA-Z0-9]*=//'`
- ;;
- --push)
- push=1
- ;;
- --no-push)
- push=0
- ;;
- -*)
- echo "Invalid option: $opt" 1>&2
- exit 1
- ;;
- *)
- version=$opt
- ;;
- esac
-done
-
-if [ -z "$version" ]; then
- echo " Usage"
- echo " $0 --ver=num [--repo=name --branch=name --push]" 1>&2
- echo " Example"
- echo " $0 --ver=2.10rc1 --repo=git+ssh://user@repo.or.cz/nasm.git --branch=master --no-push" 1>&2
- echo " With --no-push the changes are not pushed out to remote repo"
- exit 1
-fi
-
-tag="nasm-$version"
-
-echo "$version" > version
-git add version
-git commit -m "NASM $version"
-git tag -a -m "NASM $version" "$tag"
-
-if [ $push = 1 ]; then
- set -x
- git push $repo $branch
- git push $repo $tag
- git push --tags $repo
- set +x
-fi
-