summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReuben Thomas <rrt@sc3d.org>2017-08-08 14:49:47 +0100
committerGitHub <noreply@github.com>2017-08-08 14:49:47 +0100
commit543950d2426f781e4af827c6380c5fc633f6db6c (patch)
treed4cc9eecaa0ebe71f1df288b86c7ffb23a85812f
parentc2ecfb43e97b6a76d63511652ba00be2d4376645 (diff)
parenta1a2678d8274aa2192c5a6ccc20ffa0bea9bcc18 (diff)
downloadenchant-543950d2426f781e4af827c6380c5fc633f6db6c.tar.gz
Merge pull request #151 from rrthomas/masterv2.1.0
Final changes for release 2.1.0
-rw-r--r--HACKING19
-rw-r--r--Makefile.am12
-rw-r--r--NEWS17
-rw-r--r--configure.ac8
-rw-r--r--gl/build-aux/g++-warning.spec100
-rw-r--r--gl/m4/manywarnings.m4.diff251
-rw-r--r--gl/m4/warnings.m4.diff26
-rw-r--r--m4/.gitignore1
8 files changed, 52 insertions, 382 deletions
diff --git a/HACKING b/HACKING
index 72b6e04..bb06110 100644
--- a/HACKING
+++ b/HACKING
@@ -85,3 +85,22 @@ projects.
Cleaning code in libenchant is more important than trying not to break
existing code. Code clean-ups are always welcome.
+
+
+Making a release
+----------------
+
+To make a release, you'll need woger:
+
+https://github.com/rrthomas/woger
+
+and github-release, suitably configured:
+
+https://github.com/aktau/github-release
+
+Having tested and pushed all the changes, update the version number in
+configure.ac and write the NEWS entry and push those too.
+
+Then execute:
+
+make release
diff --git a/Makefile.am b/Makefile.am
index 0151465..f316950 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -29,3 +29,15 @@ ALL_SOURCE_FILES = \
loc:
cloc --force-lang="Bourne Shell",conf $(ALL_SOURCE_FILES)
+
+release: distcheck
+ echo $(VERSION) | grep -v -e - || ( echo "Current commit $(VERSION) is not at a release tag"; exit 1 )
+ git diff --exit-code && \
+ git tag -a -m "Release tag" "v$(VERSION)" && \
+ git push && git push --tags && \
+ woger github \
+ github_user=AbiWord \
+ github_dist_type=source \
+ package=$(PACKAGE) \
+ version=$(VERSION) \
+ dist_type=tar.gz
diff --git a/NEWS b/NEWS
index f651c90..5d2d3b0 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,18 @@
-2.0.0 (???)
------------
+2.1.0 (August 7, 2017)
+----------------------
+
+This is a minor feature release. It adds the -word-chars flag to
+enchant-lsmod, for a convenient way for other programs to get the extra word
+characters for a particular dictionary.
+
+A man page for enchant-lsmod is also now provided.
+
+A little more code cleanup has been done, in particular by upstreaming
+gnulib patches.
+
+
+2.0.0 (August 4, 2017)
+----------------------
The major version number has been incremented owing to API/ABI changes, but
in practice upgrading from 1.6.x should be easy.
diff --git a/configure.ac b/configure.ac
index 4447e2d..d57992f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,4 +1,4 @@
-AC_INIT([enchant],[2.0.0])
+AC_INIT([enchant],[2.1.0])
AC_CONFIG_SRCDIR(src/enchant.h)
AC_CONFIG_AUX_DIR([build-aux])
AM_INIT_AUTOMAKE([subdir-objects])
@@ -86,13 +86,15 @@ if test "$gl_gcc_warnings" = yes; then
gl_WARN_ADD([$w])
done
- gl_MANYWARN_ALL_GXX([cxx_warnings])
+ AC_LANG_PUSH([C++])
+ gl_MANYWARN_ALL_GCC([cxx_warnings])
dnl Enable all G++ warnings not in this list.
gl_MANYWARN_COMPLEMENT([cxx_warnings], [$cxx_warnings], [$nw])
for w in $cxx_warnings; do
- gl_CXX_WARN_ADD([$w])
+ gl_WARN_ADD([$w])
done
+ AC_LANG_POP
dnl Add an extra warning
gl_WARN_ADD([-Wstrict-overflow=1])
diff --git a/gl/build-aux/g++-warning.spec b/gl/build-aux/g++-warning.spec
deleted file mode 100644
index ae3e866..0000000
--- a/gl/build-aux/g++-warning.spec
+++ /dev/null
@@ -1,100 +0,0 @@
-# options to filter out, and why
---all-warnings alias for -Wall
---extra-warnings alias for -Wextra
--frequire-return-statement go
--Waggregate-return obsolescent
--Waliasing fortran
--Walign-commons fortran
--Wampersand fortran
--Warray-bounds covered by -Warray-bounds=
--Warray-bounds= handled specially by gl_MANYWARN_ALL_GCC
--Warray-temporaries fortran
--Wassign-intercept objc/objc++
--Wbad-function-cast c
--Wc++0x-compat c++ compatibility
--Wc++11-compat c++ compatibility
--Wc++14-compat c++ compatibility
--Wc90-c99-compat c compatibility
--Wc99-c11-compat c compatibility
--Wcast-qual FIXME maybe? too much noise; encourages bad changes
--Wcast-result d
--Wc-binding-type fortran
--Wc++-compat FIXME maybe? borderline. some will want this
--Wcharacter-truncation fortran
--Wcompare-reals fortran
--Wconversion-extra fortran
--Wconversion FIXME maybe? too much noise; encourages bad changes
--Wdeclaration-after-statement FIXME: do not want. others may
--Wdesignated-init c
--Wdiscarded-array-qualifiers c
--Wdiscarded-qualifiers c
--Werror-implicit-function-declaration deprecated
--Wfloat-conversion FIXME maybe? borderline. some will want this
--Wfloat-equal FIXME maybe? borderline. some will want this
--Wformat covered by -Wformat=2
--Wformat= gcc --help=warnings artifact
--Wframe-larger-than=<number> FIXME: choose something sane?
--Wfunction-elimination fortran
--Wimplicit c
--Wimplicit-function-declaration c
--Wimplicit-int c
--Wimplicit-interface fortran
--Wimplicit-procedure fortran
--Wincompatible-pointer-types c
--Wint-conversion c
--Winteger-division fortran
--Wintrinsic-shadow fortran
--Wintrinsics-std fortran
--Wjump-misses-init c
--Wlarger-than- gcc --help=warnings artifact
--Wlarger-than=<number> FIXME: choose something sane?
--Wline-truncation fortran
--Wlong-long obsolescent
--Wmissing-format-attribute obsolescent
--Wmissing-noreturn obsolescent
--Wmissing-parameter-type c
--Wmissing-prototypes c
--Wnested-externs c
--Wnormalized covered by -Wnormalized=
--Wnormalized=<none|id|nfc|nfkc> handled specially by gl_MANYWARN_ALL_GCC
--Wold-style-declaration c
--Wold-style-definition c
--Woverride-init c
--Wpadded FIXME maybe? warns about "stabil" member in /usr/include/bits/timex.h
--Wpedantic FIXME: too strict?
--Wpointer-sign c
--Wpointer-to-int-cast c
--Wproperty-assign-default objc++
--Wprotocol objc++
--Wrealloc-lhs-all fortran
--Wrealloc-lhs fortran
--Wreal-q-constant fortran
--Wredundant-decls FIXME maybe? many _gl_cxxalias_dummy FPs
--Wselector objc and objc++
--Wshadow-ivar objc
--Wshift-overflow covered by -Wshift-overflow=2
--Wshift-overflow= gcc --help=warnings artifact
--Wsign-compare FIXME maybe? borderline. some will want this
--Wsign-conversion FIXME maybe? borderline. some will want this
--Wstack-usage= FIXME: choose something sane?
--Wstrict-aliasing= FIXME: choose something sane?
--Wstrict-overflow= FIXME: choose something sane?
--Wstrict-prototypes c
--Wstrict-selector-match objc and objc++
--Wsurprising fortran
--Wswitch-enum FIXME maybe? borderline. some will want this
--Wsynth deprecated
--Wtabs fortran
--Wtarget-lifetime fortran
--Wtraditional-conversion obsolescent
--Wtraditional obsolescent
--Wundeclared-selector objc and objc++
--Wundef FIXME maybe? too many false positives
--Wunderflow fortran
--Wunreachable-code obsolescent no-op
--Wunsuffixed-float-constants triggers warning in gnulib's timespec.h
--Wunused-const-variable covered by -Wunusec-const-variable=2
--Wunused-const-variable= gcc --help=warnings artifact
--Wunused-dummy-argument fortran
--Wuse-without-only fortran
--Wzerotrip fortran
diff --git a/gl/m4/manywarnings.m4.diff b/gl/m4/manywarnings.m4.diff
deleted file mode 100644
index 31231f2..0000000
--- a/gl/m4/manywarnings.m4.diff
+++ /dev/null
@@ -1,251 +0,0 @@
---- gnulib/m4/manywarnings.m4 2017-08-03 18:10:49.139888596 +0100
-+++ gl/m4/manywarnings.m4 2017-04-04 22:27:00.204131193 +0100
-@@ -293,3 +274,248 @@
-
- $1=$gl_manywarn_set
- ])
-+
-+# gl_MANYWARN_ALL_GXX(VARIABLE)
-+# -----------------------------
-+# Add all documented G++ warning parameters to variable VARIABLE.
-+# Note that you need to test them using gl_WARN_ADD if you want to
-+# make sure your gcc understands it.
-+AC_DEFUN([gl_MANYWARN_ALL_GXX],
-+[
-+ AC_LANG_PUSH([C++])
-+
-+ dnl First, check for some issues that only occur when combining multiple
-+ dnl gcc warning categories.
-+ AC_REQUIRE([AC_PROG_CXX])
-+ if test -n "$GXX"; then
-+
-+ dnl Check if -W -Werror -Wno-missing-field-initializers is supported
-+ dnl with the current $CXX $CXXFLAGS $CPPFLAGS.
-+ AC_MSG_CHECKING([whether -Wno-missing-field-initializers is supported])
-+ AC_CACHE_VAL([gl_cv_cxx_nomfi_supported], [
-+ gl_save_CXXFLAGS="$CXXFLAGS"
-+ CXXFLAGS="$CXXFLAGS -W -Werror -Wno-missing-field-initializers"
-+ AC_COMPILE_IFELSE(
-+ [AC_LANG_PROGRAM([[]], [[]])],
-+ [gl_cv_cxx_nomfi_supported=yes],
-+ [gl_cv_cxx_nomfi_supported=no])
-+ CXXFLAGS="$gl_save_CXXFLAGS"])
-+ AC_MSG_RESULT([$gl_cv_cxx_nomfi_supported])
-+
-+ if test "$gl_cv_cxx_nomfi_supported" = yes; then
-+ dnl Now check whether -Wno-missing-field-initializers is needed
-+ dnl for the { 0, } construct.
-+ AC_MSG_CHECKING([whether -Wno-missing-field-initializers is needed])
-+ AC_CACHE_VAL([gl_cv_cxx_nomfi_needed], [
-+ gl_save_CXXFLAGS="$CXXFLAGS"
-+ CXXFLAGS="$CXXFLAGS -W -Werror"
-+ AC_COMPILE_IFELSE(
-+ [AC_LANG_PROGRAM(
-+ [[int f (void)
-+ {
-+ typedef struct { int a; int b; } s_t;
-+ s_t s1 = { 0, };
-+ return s1.b;
-+ }
-+ ]],
-+ [[]])],
-+ [gl_cv_cxx_nomfi_needed=no],
-+ [gl_cv_cxx_nomfi_needed=yes])
-+ CXXFLAGS="$gl_save_CXXFLAGS"
-+ ])
-+ AC_MSG_RESULT([$gl_cv_cxx_nomfi_needed])
-+ fi
-+
-+ dnl Next, check if -Werror -Wuninitialized is useful with the
-+ dnl user's choice of $CXXFLAGS; some versions of gcc warn that it
-+ dnl has no effect if -O is not also used
-+ AC_MSG_CHECKING([whether -Wuninitialized is supported])
-+ AC_CACHE_VAL([gl_cv_cxx_uninitialized_supported], [
-+ gl_save_CXXFLAGS="$CXXFLAGS"
-+ CXXFLAGS="$CXXFLAGS -Werror -Wuninitialized"
-+ AC_COMPILE_IFELSE(
-+ [AC_LANG_PROGRAM([[]], [[]])],
-+ [gl_cv_cxx_uninitialized_supported=yes],
-+ [gl_cv_cxx_uninitialized_supported=no])
-+ CXXFLAGS="$gl_save_CXXFLAGS"])
-+ AC_MSG_RESULT([$gl_cv_cxx_uninitialized_supported])
-+
-+ fi
-+
-+ # List all gcc warning categories.
-+ # To compare this list to your installed GCC's, run this Bash command:
-+ #
-+ # comm -3 \
-+ # <(sed -n 's/^ *\(-[^ ]*\) .*/\1/p' manywarnings.m4 | sort) \
-+ # <(gcc --help=warnings | sed -n 's/^ \(-[^ ]*\) .*/\1/p' | sort |
-+ # grep -v -x -f <(
-+ # awk '/^[^#]/ {print $1}' ../build-aux/g++-warning.spec))
-+
-+ gl_manywarn_set=
-+ for gl_manywarn_item in \
-+ -W \
-+ -Wabi \
-+ -Wabi-tag \
-+ -Waddress \
-+ -Waggressive-loop-optimizations \
-+ -Wall \
-+ -Wattributes \
-+ -Wbool-compare \
-+ -Wbuiltin-macro-redefined \
-+ -Wcast-align \
-+ -Wchar-subscripts \
-+ -Wchkp \
-+ -Wclobbered \
-+ -Wcomment \
-+ -Wcomments \
-+ -Wconditionally-supported \
-+ -Wconversion-null \
-+ -Wcoverage-mismatch \
-+ -Wcpp \
-+ -Wctor-dtor-privacy \
-+ -Wdate-time \
-+ -Wdelete-incomplete \
-+ -Wdelete-non-virtual-dtor \
-+ -Wdeprecated \
-+ -Wdeprecated-declarations \
-+ -Wdisabled-optimization \
-+ -Wdiv-by-zero \
-+ -Wdouble-promotion \
-+ -Weffc++ \
-+ -Wempty-body \
-+ -Wendif-labels \
-+ -Wenum-compare \
-+ -Wextra \
-+ -Wformat-contains-nul \
-+ -Wformat-extra-args \
-+ -Wformat-nonliteral \
-+ -Wformat-security \
-+ -Wformat-signedness \
-+ -Wformat-y2k \
-+ -Wformat-zero-length \
-+ -Wfree-nonheap-object \
-+ -Wignored-qualifiers \
-+ -Winherited-variadic-ctor \
-+ -Winit-self \
-+ -Winline \
-+ -Wint-to-pointer-cast \
-+ -Winvalid-memory-model \
-+ -Winvalid-offsetof \
-+ -Winvalid-pch \
-+ -Wliteral-suffix \
-+ -Wlogical-not-parentheses \
-+ -Wlogical-op \
-+ -Wmain \
-+ -Wmaybe-uninitialized \
-+ -Wmemset-transposed-args \
-+ -Wmissing-braces \
-+ -Wmissing-declarations \
-+ -Wmissing-field-initializers \
-+ -Wmissing-include-dirs \
-+ -Wmultichar \
-+ -Wnarrowing \
-+ -Wnoexcept \
-+ -Wnon-template-friend \
-+ -Wnon-virtual-dtor \
-+ -Wnonnull \
-+ -Wodr \
-+ -Wold-style-cast \
-+ -Wopenmp-simd \
-+ -Woverflow \
-+ -Woverlength-strings \
-+ -Woverloaded-virtual \
-+ -Wpacked \
-+ -Wpacked-bitfield-compat \
-+ -Wparentheses \
-+ -Wpmf-conversions \
-+ -Wpointer-arith \
-+ -Wpragmas \
-+ -Wreorder \
-+ -Wreturn-local-addr \
-+ -Wreturn-type \
-+ -Wsequence-point \
-+ -Wshadow \
-+ -Wshift-count-negative \
-+ -Wshift-count-overflow \
-+ -Wsign-promo \
-+ -Wsized-deallocation \
-+ -Wsizeof-array-argument \
-+ -Wsizeof-pointer-memaccess \
-+ -Wstack-protector \
-+ -Wstrict-aliasing \
-+ -Wstrict-null-sentinel \
-+ -Wstrict-overflow \
-+ -Wsuggest-attribute=const \
-+ -Wsuggest-attribute=format \
-+ -Wsuggest-attribute=noreturn \
-+ -Wsuggest-attribute=pure \
-+ -Wsuggest-final-methods \
-+ -Wsuggest-final-types \
-+ -Wsuggest-override \
-+ -Wswitch \
-+ -Wswitch-bool \
-+ -Wswitch-default \
-+ -Wsync-nand \
-+ -Wsystem-headers \
-+ -Wtrampolines \
-+ -Wtrigraphs \
-+ -Wtype-limits \
-+ -Wuninitialized \
-+ -Wunknown-pragmas \
-+ -Wunsafe-loop-optimizations \
-+ -Wunused \
-+ -Wunused-but-set-parameter \
-+ -Wunused-but-set-variable \
-+ -Wunused-function \
-+ -Wunused-label \
-+ -Wunused-local-typedefs \
-+ -Wunused-macros \
-+ -Wunused-parameter \
-+ -Wunused-result \
-+ -Wunused-value \
-+ -Wunused-variable \
-+ -Wuseless-cast \
-+ -Wvarargs \
-+ -Wvariadic-macros \
-+ -Wvector-operation-performance \
-+ -Wvirtual-move-assign \
-+ -Wvla \
-+ -Wvolatile-register-var \
-+ -Wwrite-strings \
-+ -Wzero-as-null-pointer-constant \
-+ \
-+ ; do
-+ gl_manywarn_set="$gl_manywarn_set $gl_manywarn_item"
-+ done
-+
-+ # gcc --help=warnings outputs an unusual form for these options; list
-+ # them here so that the above 'comm' command doesn't report a false match.
-+ gl_manywarn_set="$gl_manywarn_set -Warray-bounds=2"
-+ gl_manywarn_set="$gl_manywarn_set -Wnormalized=nfc"
-+ gl_manywarn_set="$gl_manywarn_set -Wshift-overflow=2"
-+ gl_manywarn_set="$gl_manywarn_set -Wunused-const-variable=2"
-+
-+ # These are needed for older GCC versions.
-+ if test -n "$GXX"; then
-+ case `($CXX --version) 2>/dev/null` in
-+ 'g++ (GCC) '[[0-3]].* | \
-+ 'g++ (GCC) '4.[[0-7]].*)
-+ gl_manywarn_set="$gl_manywarn_set -fdiagnostics-show-option"
-+ gl_manywarn_set="$gl_manywarn_set -funit-at-a-time"
-+ ;;
-+ esac
-+ fi
-+
-+ # Disable specific options as needed.
-+ if test "$gl_cv_cxx_nomfi_needed" = yes; then
-+ gl_manywarn_set="$gl_manywarn_set -Wno-missing-field-initializers"
-+ fi
-+
-+ if test "$gl_cv_cxx_uninitialized_supported" = no; then
-+ gl_manywarn_set="$gl_manywarn_set -Wno-uninitialized"
-+ fi
-+
-+ $1=$gl_manywarn_set
-+
-+ AC_LANG_POP([C++])
-+])
diff --git a/gl/m4/warnings.m4.diff b/gl/m4/warnings.m4.diff
deleted file mode 100644
index 86c7f9a..0000000
--- a/gl/m4/warnings.m4.diff
+++ /dev/null
@@ -1,26 +0,0 @@
---- gnulib/m4/warnings.m4 2017-02-23 15:26:15.536364509 +0000
-+++ gl/m4/warnings.m4 2017-04-04 22:27:00.204131193 +0100
-@@ -74,6 +74,20 @@
- [AC_SUBST([WARN_CFLAGS])])dnl
- ])
-
--# Local Variables:
--# mode: autoconf
--# End:
-+# gl_CXX_WARN_ADD(OPTION, [VARIABLE = WARN_CFLAGS],
-+# [PROGRAM = AC_LANG_PROGRAM()])
-+# ---------------------------------------------
-+# Adds parameter to WARN_CXXFLAGS if the compiler supports it when
-+# compiling PROGRAM. For example, gl_CXX_WARN_ADD([-Wparentheses]).
-+#
-+# If VARIABLE is a variable name, AC_SUBST it.
-+AC_DEFUN([gl_CXX_WARN_ADD],
-+[AC_REQUIRE([gl_UNKNOWN_WARNINGS_ARE_ERRORS])
-+gl_COMPILER_OPTION_IF([$1],
-+ [gl_AS_VAR_APPEND(m4_if([$2], [], [[WARN_CXXFLAGS]], [[$2]]), [" $1"])],
-+ [],
-+ [$3])
-+m4_ifval([$2],
-+ [AS_LITERAL_IF([$2], [AC_SUBST([$2])])],
-+ [AC_SUBST([WARN_CXXFLAGS])])dnl
-+])
diff --git a/m4/.gitignore b/m4/.gitignore
index 3a64176..4b92c1b 100644
--- a/m4/.gitignore
+++ b/m4/.gitignore
@@ -55,3 +55,4 @@
/std-gnu11.m4
/rawmemchr.m4
/strchrnul.m4
+/manywarnings-c++.m4