diff --git a/sysdeps/guile/ChangeLog b/sysdeps/guile/ChangeLog index c978e144..09fbe65e 100644 --- a/sysdeps/guile/ChangeLog +++ b/sysdeps/guile/ChangeLog @@ -1,5 +1,7 @@ 1998-12-08 Martin Baulig + * guile.awk (glibtop-get-sysdeps): New guile function. + * guile.awk (glibtop_get_proc_map): Make a gh_list for each map entry and append all of them to the returned list. (glibtop_get_mountlist): Likewise. diff --git a/sysdeps/guile/guile.awk b/sysdeps/guile/guile.awk index 985c31e1..50162ddd 100644 --- a/sysdeps/guile/guile.awk +++ b/sysdeps/guile/guile.awk @@ -22,6 +22,8 @@ BEGIN { backconv["pid_t"] = "gh_scm2ulong"; backconv["long"] = "gh_scm2long"; backconv["ulong"] = "gh_scm2ulong"; + + feature_count = 0; } function make_output(line) { @@ -34,6 +36,9 @@ function make_output(line) { sub(/^@/,"",feature); features[feature] = feature; + feature_field[feature_count] = feature; + feature_count = feature_count+1; + total_nr_params = 0; if (param_def == "string") { @@ -173,6 +178,14 @@ function make_output(line) { /^[^#]/ { make_output($0) } END { + sep="" + sysdeps="void|sysdeps|ulong("; + for(nr = 0; nr < feature_count; nr++) { + sysdeps = sysdeps""sep""feature_field[nr]; + sep=","; + } + sysdeps=sysdeps")"; + make_output(sysdeps); print "void"; print "glibtop_boot_guile (void)"; print "{";