diff options
-rw-r--r-- | NEWS | 30 | ||||
-rw-r--r-- | THANKS | 7 | ||||
-rw-r--r-- | m4/slibtool.m4 | 3 | ||||
-rw-r--r-- | project/tagver.mk | 4 | ||||
-rw-r--r-- | src/internal/argv/argv.h | 16 | ||||
-rw-r--r-- | src/internal/slibtool_mkvars_impl.c | 2 |
6 files changed, 56 insertions, 6 deletions
@@ -1,3 +1,33 @@ +0.6.0: + +This minor release introduces the slibtoolize execution mode, +as well as completion of the core slibtool.m4 functionality. +In addition, this release entails several enhancements and +fixes in other areas. + +- slibtoolize: new execution mode, driver integration, and symlink. +- slibtoolize: added a no-op, yet backward compatible ltmain.sh. +- slibtoolize: auxiliary files: added slibtool.sh (optional wrapper). +- driver: --mkvars: implementation and integration. +- driver: --mkvars: special case the SLIBTOOL make variable. +- driver: --heuristics: added slibtool.cfg prioritized support. +- driver: detect slibtool.cfg in non-heuristics mode where applicable. +- driver: slbt_output_raw_vector(): refactor and prettify. +- host: derive as from ranlib as needed. +- host: derive windres and dlltool from ranlib as needed. +- host: detect a native build environment based on ar(1). +- host: set native mode based on the detected ar(1) as needed. +- host: cfgmeta: mark tools derived from ranlib as such. +- util: PE/COFF: list is target neutral, process all syms. +- util: properly set weak aliases of strong symbols. +- ar: yaml output: initial implementation. +- ar: internally bind the meta ctx to the archive ctx. +- ar: sort the syminfo vector in a coff-aware manner. +- ar: PE/COFF: properly set weak aliases of strong symbols. +- ar: symbol mapfile: properly set strong aliases of weak symbols. +- ar: symbol vector: include weak aliases of strong symbols. +- ar: symbol file: include weak aliases of strong symbols. + 0.5.36: This (pinky promise, for real now) absolutely final patch release @@ -1,3 +1,10 @@ +0.6.0: + +The project owes much of the progress leading to this slibtool[ize] +release to @orbea, who contineus to tirelessly test, identify bugs +and areas for improvement, and bring all the dots together. So once +again, thank you so much! + 0.5.36: Getting slibtool to the point where it could build a vast number of diff --git a/m4/slibtool.m4 b/m4/slibtool.m4 index 25c37a3..bf1c4e1 100644 --- a/m4/slibtool.m4 +++ b/m4/slibtool.m4 @@ -402,8 +402,11 @@ if [[ -z "${LEX}" ]]; then AC_CHECK_PROG([LEX],[lex],[lex]) fi +slibtool_lex_output_root="${ac_cv_prog_lex_root:-lex.yy}" + AC_SUBST([LEX]) AC_SUBST([LEXLIB]) +AC_SUBST([LEX_OUTPUT_ROOT],["${slibtool_lex_output_root}"]) ]) diff --git a/project/tagver.mk b/project/tagver.mk index 2595fde..f22212f 100644 --- a/project/tagver.mk +++ b/project/tagver.mk @@ -1,5 +1,5 @@ VER_NAMESPACE = SLBT VER_MAJOR = 0 -VER_MINOR = 5 -VER_PATCH = 36 +VER_MINOR = 6 +VER_PATCH = 0 diff --git a/src/internal/argv/argv.h b/src/internal/argv/argv.h index d17865b..98c42da 100644 --- a/src/internal/argv/argv.h +++ b/src/internal/argv/argv.h @@ -833,6 +833,7 @@ static void argv_usage_impl( { const struct argv_option ** optv; const struct argv_option * option; + int nlong; bool fshort,flong,fboth; size_t len,optlen,desclen; char cache; @@ -865,7 +866,7 @@ static void argv_usage_impl( if (header) argv_dprintf(fd,"%s",header); - for (optlen=0,optv=options; *optv; optv++) { + for (optlen=0,nlong=0,optv=options; *optv; optv++) { option = *optv; /* indent + comma */ @@ -884,6 +885,11 @@ static void argv_usage_impl( /* optlen */ if (len > optlen) optlen = len; + + /* long (vs. hybrid-only) option? */ + if (option->long_name) + if (!(option->flags & ARGV_OPTION_HYBRID_ONLY)) + nlong++; } if (optlen >= optcap) { @@ -904,7 +910,7 @@ static void argv_usage_impl( /* color */ if (fcolor) { color = (color == ccyan) ? cblue : ccyan; - argv_dprintf(fd,color); + argv_dprintf(fd,color,0); } /* description, using either paradigm or argname if applicable */ @@ -916,7 +922,11 @@ static void argv_usage_impl( /* long/hybrid option prefix (-/--) */ prefix = option->flags & ARGV_OPTION_HYBRID_ONLY - ? " -" : "--"; + ? " -" : " --"; + + /* avoid extra <stace> when all long opts are hybrid-only */ + if (nlong == 0) + prefix++; /* option string */ if (fboth && option->short_name && option->long_name) diff --git a/src/internal/slibtool_mkvars_impl.c b/src/internal/slibtool_mkvars_impl.c index 155036a..5245034 100644 --- a/src/internal/slibtool_mkvars_impl.c +++ b/src/internal/slibtool_mkvars_impl.c @@ -38,7 +38,7 @@ static int slbt_get_mkvars_var( /* search for ^var= */ for (pline=tctx->txtlinev; !match && *pline; pline++) { if (!strncmp(*pline,var,len)) { - if (isspace((*pline)[len]) || ((*pline)[len] == '=')) { + if (isspace((cint = (*pline)[len])) || ((*pline)[len] == '=')) { mark = &(*pline)[len]; for (; isspace(cint = *mark); ) |