From 3d0e06cc713b4f898d2888c0787450fbc11632fc Mon Sep 17 00:00:00 2001 From: Mikael Pettersson Date: Wed, 21 Jul 2021 18:24:53 +0200 Subject: [PATCH] getopt: rename module to my_getopt due to rebar3 bug --- erlang/apps/8to9/src/8to9.erl | 12 ++-- erlang/apps/as/src/as.erl | 8 +-- erlang/apps/ld/src/ld.erl | 54 +++++++-------- .../lib/src/{getopt.erl => my_getopt.erl} | 6 +- erlang/apps/nm/src/nm.erl | 40 +++++------ erlang/apps/od/src/od.erl | 18 ++--- erlang/apps/readelf/src/readelf.erl | 66 +++++++++---------- erlang/apps/sim/src/sim.erl | 12 ++-- erlang/rebar.config | 4 +- 9 files changed, 111 insertions(+), 109 deletions(-) rename erlang/apps/lib/src/{getopt.erl => my_getopt.erl} (97%) diff --git a/erlang/apps/8to9/src/8to9.erl b/erlang/apps/8to9/src/8to9.erl index 5def8dd..f1f0c93 100644 --- a/erlang/apps/8to9/src/8to9.erl +++ b/erlang/apps/8to9/src/8to9.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 8to9 -- convert octet files to nonet files -%%% Copyright (C) 2013-2019 Mikael Pettersson +%%% Copyright (C) 2013-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -27,11 +27,11 @@ main(Argv) -> escript_runtime:start(fun main_/1, Argv). main_(Argv) -> - case getopt:parse(Argv, "Vi:o:", - [ {"version", 'no', $V} - , {"infile", 'required', $i} - , {"outfile", 'required', $o} - ]) of + case my_getopt:parse(Argv, "Vi:o:", + [ {"version", 'no', $V} + , {"infile", 'required', $i} + , {"outfile", 'required', $o} + ]) of {ok, {Options, []}} -> Args = scan_options(Options, #args{}), OutFile = get_outfile(Args), diff --git a/erlang/apps/as/src/as.erl b/erlang/apps/as/src/as.erl index 6937c08..01afb07 100644 --- a/erlang/apps/as/src/as.erl +++ b/erlang/apps/as/src/as.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 'as' clone for pdp10-elf -%%% Copyright (C) 2013-2020 Mikael Pettersson +%%% Copyright (C) 2013-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -28,9 +28,9 @@ main(Argv) -> -spec main_([string()]) -> no_return(). main_(Argv) -> - case getopt:parse(Argv, "vo:", - [ {"version", no, version} - ]) of + case my_getopt:parse(Argv, "vo:", + [ {"version", no, version} + ]) of {ok, {Options, Files}} -> OutFile = scan_options(Options), case as(Files, OutFile) of diff --git a/erlang/apps/ld/src/ld.erl b/erlang/apps/ld/src/ld.erl index 6c721f4..94cfe32 100644 --- a/erlang/apps/ld/src/ld.erl +++ b/erlang/apps/ld/src/ld.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 'ld' clone for pdp10-elf -%%% Copyright (C) 2020 Mikael Pettersson +%%% Copyright (C) 2020-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -182,32 +182,32 @@ ld(Argv) -> %% - it takes some single-dash long options, e.g. -nostdlib %% - options and non-options must be processed in the order given, %% e.g. due to --start-group ... --end-group - case getopt:parse(Argv, "-b:e:l:L:m:nNo:tvV", - [ %% single-dash long options - { "-EB", no, 'EB' } - , { "-Tbss", required, 'Tbss' } - , { "-Tdata", required, 'Tdata' } - , { "-Trodata-segment", required, 'Trodata' } - , { "-Ttext", required, 'Ttext' } - , { "-Ttext-segment", required, 'Ttext' } - %% long-only options - , { "help", no, help } - , { "no-omagic", no, no_omagic } - , { "oformat", required, oformat } - , { "print-output-format", no, print_output_format } - , { "section-start", required, section_start } - , { "target-help", no, target_help } - %% long aliases for short options - , { "entry", required, $e } - , { "format", required, $b } - , { "library", required, $l } - , { "library-path", required, $L } - , { "nmagic", no, $n } - , { "omagic", no, $N } - , { "output", required, $o } - , { "trace", no, $t } - , { "version", no, $v } - ]) of + case my_getopt:parse(Argv, "-b:e:l:L:m:nNo:tvV", + [ %% single-dash long options + { "-EB", no, 'EB' } + , { "-Tbss", required, 'Tbss' } + , { "-Tdata", required, 'Tdata' } + , { "-Trodata-segment", required, 'Trodata' } + , { "-Ttext", required, 'Ttext' } + , { "-Ttext-segment", required, 'Ttext' } + %% long-only options + , { "help", no, help } + , { "no-omagic", no, no_omagic } + , { "oformat", required, oformat } + , { "print-output-format", no, print_output_format } + , { "section-start", required, section_start } + , { "target-help", no, target_help } + %% long aliases for short options + , { "entry", required, $e } + , { "format", required, $b } + , { "library", required, $l } + , { "library-path", required, $L } + , { "nmagic", no, $n } + , { "omagic", no, $N } + , { "output", required, $o } + , { "trace", no, $t } + , { "version", no, $v } + ]) of {ok, {Opts, _NonOpts = []}} -> case process_options(Opts) of {ok, Options} -> diff --git a/erlang/apps/lib/src/getopt.erl b/erlang/apps/lib/src/my_getopt.erl similarity index 97% rename from erlang/apps/lib/src/getopt.erl rename to erlang/apps/lib/src/my_getopt.erl index 3078623..20beb9e 100644 --- a/erlang/apps/lib/src/getopt.erl +++ b/erlang/apps/lib/src/my_getopt.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% getopt for Erlang programs -%%% Copyright (C) 2018-2020 Mikael Pettersson +%%% Copyright (C) 2018-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -18,7 +18,9 @@ %%% You should have received a copy of the GNU General Public License %%% along with pdp10-tools. If not, see . --module(getopt). +%% This module was renamed from 'getopt' to 'my_getopt' to work around +%% a bug in rebar3 . +-module(my_getopt). -export([parse/3, format_error/1]). -define(no, no). diff --git a/erlang/apps/nm/src/nm.erl b/erlang/apps/nm/src/nm.erl index 99fb6f3..c906197 100644 --- a/erlang/apps/nm/src/nm.erl +++ b/erlang/apps/nm/src/nm.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 'nm' clone for pdp10-elf -%%% Copyright (C) 2013-2020 Mikael Pettersson +%%% Copyright (C) 2013-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -55,25 +55,25 @@ main_(Argv) -> %% -X 32_64 %% --help [TODO?] %% @file [TODO?] - case getopt:parse(Argv, "AoBDf:gnvpPSrt:uV", - [ %% long-only options - {"no-demangle", no, no_demangle} - , {"special-syms", no, special_syms} - , {"defined-only", no, defined_only} - %% long aliases for short options - , {"print-file-name", no, $A} - , {"dynamic", no, $D} - , {"format", required, $f} - , {"extern-only", no, $g} - , {"numeric-sort", no, $n} - , {"no-sort", no, $p} - , {"portability", no, $P} - , {"print-size", no, $S} - , {"reverse-sort", no, $r} - , {"radix", required, $t} - , {"undefined-only", no, $u} - , {"version", no, $V} - ]) of + case my_getopt:parse(Argv, "AoBDf:gnvpPSrt:uV", + [ %% long-only options + {"no-demangle", no, no_demangle} + , {"special-syms", no, special_syms} + , {"defined-only", no, defined_only} + %% long aliases for short options + , {"print-file-name", no, $A} + , {"dynamic", no, $D} + , {"format", required, $f} + , {"extern-only", no, $g} + , {"numeric-sort", no, $n} + , {"no-sort", no, $p} + , {"portability", no, $P} + , {"print-size", no, $S} + , {"reverse-sort", no, $r} + , {"radix", required, $t} + , {"undefined-only", no, $u} + , {"version", no, $V} + ]) of {ok, {Options, Files}} -> nm(scan_options(Options), Files); {error, Reason} -> diff --git a/erlang/apps/od/src/od.erl b/erlang/apps/od/src/od.erl index d7fca55..c248bc0 100644 --- a/erlang/apps/od/src/od.erl +++ b/erlang/apps/od/src/od.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 'od' clone for files with 9-bit bytes -%%% Copyright (C) 2013-2020 Mikael Pettersson +%%% Copyright (C) 2013-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -43,14 +43,14 @@ main(Argv) -> -spec main_([string()]) -> no_return(). main_(Argv) -> - case getopt:parse(Argv, "VbcdDiloOsxXA:j:N:t:w::", - [ {"version", no, $V} - , {"address-radix", required, $A} - , {"skip-bytes", required, $j} - , {"read-bytes", required, $N} - , {"format", required, $t} - , {"width", optional, $w} - ]) of + case my_getopt:parse(Argv, "VbcdDiloOsxXA:j:N:t:w::", + [ {"version", no, $V} + , {"address-radix", required, $A} + , {"skip-bytes", required, $j} + , {"read-bytes", required, $N} + , {"format", required, $t} + , {"width", optional, $w} + ]) of {ok, {Options, Files}} -> od(scan_options(Options), Files); {error, Reason} -> diff --git a/erlang/apps/readelf/src/readelf.erl b/erlang/apps/readelf/src/readelf.erl index 79566a2..edeb7bd 100644 --- a/erlang/apps/readelf/src/readelf.erl +++ b/erlang/apps/readelf/src/readelf.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% 'readelf' clone for pdp10-elf -%%% Copyright (C) 2013-2020 Mikael Pettersson +%%% Copyright (C) 2013-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -51,38 +51,38 @@ main(Argv) -> -spec main_([string()]) -> no_return(). main_(Argv) -> - case getopt:parse(Argv, "ahlSgtesnrudVADcIvW", - [ - %% long-only options - { "dyn-syms", no, dyn_syms } - , { "disassemble", no, disassemble } % extension - %% long aliases for short options - , { "all", no, $a } - , { "file-header", no, $h } - , { "program-headers", no, $l } - , { "segments", no, $l } - , { "section-groups", no, $g } - , { "section-details", no, $t } - , { "headers", no, $e } - , { "symbols", no, $s } - , { "syms", no, $s } - , { "notes", no, $n } - , { "relocs", no, $r } - , { "unwind", no, $u } - , { "version-info", no, $V } - , { "arch-specific", no, $A } - , { "use-dynamic", no, $D } - , { "archive-index", no, $c } - , { "histogram", no, $I } - , { "version", no, $v } - , { "wide", no, $W } - %% --{hex,string,relocated}-dump: NYI - %% --debug-dump: NYI - %% --dwarf-{depth,start}: NYI - %% --decompress: NYI - %% --help: NYI - %% @file: NYI - ]) of + case my_getopt:parse(Argv, "ahlSgtesnrudVADcIvW", + [ + %% long-only options + { "dyn-syms", no, dyn_syms } + , { "disassemble", no, disassemble } % extension + %% long aliases for short options + , { "all", no, $a } + , { "file-header", no, $h } + , { "program-headers", no, $l } + , { "segments", no, $l } + , { "section-groups", no, $g } + , { "section-details", no, $t } + , { "headers", no, $e } + , { "symbols", no, $s } + , { "syms", no, $s } + , { "notes", no, $n } + , { "relocs", no, $r } + , { "unwind", no, $u } + , { "version-info", no, $V } + , { "arch-specific", no, $A } + , { "use-dynamic", no, $D } + , { "archive-index", no, $c } + , { "histogram", no, $I } + , { "version", no, $v } + , { "wide", no, $W } + %% --{hex,string,relocated}-dump: NYI + %% --debug-dump: NYI + %% --dwarf-{depth,start}: NYI + %% --decompress: NYI + %% --help: NYI + %% @file: NYI + ]) of {ok, {Options, Files}} -> Opts = scan_options(Options), case Files of diff --git a/erlang/apps/sim/src/sim.erl b/erlang/apps/sim/src/sim.erl index 4bb07a3..8a2e321 100644 --- a/erlang/apps/sim/src/sim.erl +++ b/erlang/apps/sim/src/sim.erl @@ -1,7 +1,7 @@ %%% -*- erlang-indent-level: 2 -*- %%% %%% simulator for pdp10-elf -%%% Copyright (C) 2020 Mikael Pettersson +%%% Copyright (C) 2020-2021 Mikael Pettersson %%% %%% This file is part of pdp10-tools. %%% @@ -66,11 +66,11 @@ main_(Argv) -> %% Outputs the version of the simulator and exits. sim(Argv) -> - case getopt:parse(Argv, "+s:t::v", - [ { "stack-size", required, $s } - , { "trace", optional, $t } - , { "version", no, $v } - ]) of + case my_getopt:parse(Argv, "+s:t::v", + [ { "stack-size", required, $s } + , { "trace", optional, $t } + , { "version", no, $v } + ]) of {ok, {Opts0, NonOpts0}} -> case parse_options(Opts0, NonOpts0) of {ok, Options} -> do_sim(Options); diff --git a/erlang/rebar.config b/erlang/rebar.config index b8e158e..9b874fe 100644 --- a/erlang/rebar.config +++ b/erlang/rebar.config @@ -1,6 +1,6 @@ %% -*- erlang -*- %% rebar.config for pdp10-tools -%% Copyright (C) 2018-2020 Mikael Pettersson +%% Copyright (C) 2018-2021 Mikael Pettersson %% %% This file is part of pdp10-tools. %% @@ -51,11 +51,11 @@ , {sim, main, 1} %% indirect calls to Module:format_error/1 , {assemble, format_error, 1} - , {getopt, format_error, 1} , {input, format_error, 1} , {ld, format_error, 1} , {ld_input, format_error, 1} , {ld_output, format_error, 1} + , {my_getopt, format_error, 1} , {output, format_error, 1} , {parse, format_error, 1} , {pdp10_elf36, format_error, 1}