From def825542cdb743e25b1146df7123e55adf8e763 Mon Sep 17 00:00:00 2001 From: Peter Johnson Date: Sun, 14 Mar 2004 22:25:18 +0000 Subject: [PATCH] Convert test_hd.pl to test_hd.c, to remove one Perl dependency. svn path=/trunk/yasm/; revision=1102 --- Makefile.am | 5 ++++- out_test.sh | 2 +- test_hd.c | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++++ test_hd.pl | 13 ------------ 4 files changed, 64 insertions(+), 15 deletions(-) create mode 100644 test_hd.c delete mode 100755 test_hd.pl diff --git a/Makefile.am b/Makefile.am index 47b63c9f..023ff3f5 100644 --- a/Makefile.am +++ b/Makefile.am @@ -12,6 +12,10 @@ bin_PROGRAMS = TESTS = noinst_PROGRAMS = +check_PROGRAMS = test_hd + +test_hd_SOURCES = test_hd.c + include_HEADERS = libyasm.h noinst_HEADERS = util.h @@ -41,7 +45,6 @@ include frontends/Makefile.inc EXTRA_DIST += basename.c EXTRA_DIST += dirname.c EXTRA_DIST += out_test.sh -EXTRA_DIST += test_hd.pl EXTRA_DIST += Artistic.txt EXTRA_DIST += BSD.txt EXTRA_DIST += GNU_GPL-2.0 diff --git a/out_test.sh b/out_test.sh index e5870eb7..2ad66f86 100755 --- a/out_test.sh +++ b/out_test.sh @@ -69,7 +69,7 @@ do echo "PASS." passedct=`expr $passedct + 1` echo $ECHO_N "$1: Testing $3 for ${a} output file ... $ECHO_C" - ${PERL} ${srcdir}/test_hd.pl results/${o} > results/${oh} + ./test_hd results/${o} > results/${oh} diff ${og} results/${oh} > /dev/null if test $? -eq 0; then echo "PASS." diff --git a/test_hd.c b/test_hd.c new file mode 100644 index 00000000..7e021a25 --- /dev/null +++ b/test_hd.c @@ -0,0 +1,59 @@ +/* $IdPath$ + * + * Simple hexidecimal dump, two hex digits per line. + * + * Copyright (C) 2004 Peter Johnson + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND OTHER 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 AUTHOR OR OTHER 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. + */ +#include +#include + +int +main(int argc, char *argv[]) +{ + FILE *bfile; + int ch; + + if (argc != 2) { + fprintf(stderr, "Usage: %s \n", argv[0]); + return EXIT_FAILURE; + } + + bfile = fopen(argv[1], "rb"); + + if (!bfile) { + fprintf(stderr, "Could not open `%s'.\n", argv[1]); + return EXIT_FAILURE; + } + + while ((ch = fgetc(bfile)) != EOF) + printf("%02x \n", ch); + + if (ferror(bfile)) { + fprintf(stderr, "Error reading from `%s'.\n", argv[1]); + return EXIT_FAILURE; + } + + fclose(bfile); + return EXIT_SUCCESS; +} diff --git a/test_hd.pl b/test_hd.pl deleted file mode 100755 index 03645e75..00000000 --- a/test_hd.pl +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env perl - -open(BFILE,$ARGV[0]) || die "Could not open \\$ARGV[0]\\: $!"; - -# This is needed to run correctly on systems with Perl version 5.8.0 or higher -# and a UTF-8 locale. This so happens to describe Tyler's setup nicely. :) -binmode(BFILE); - -while(!eof(BFILE)) { - read(BFILE, $buffer, 1); - printf("%02x \n", ord($buffer)); -} -close(BFILE) || die "Could not close \\$ARGV[0]\\: $!"; -- 2.40.0