aboutsummaryrefslogtreecommitdiffstats
path: root/configure.ac (unfollow)
Commit message (Collapse)AuthorFilesLines
2022-06-28build: When no gpg-error-config, not install gpgme-config.NIIBE Yutaka1-0/+3
* configure.ac (USE_GPGRT_CONFIG): New. * src/Makefile.am [USE_GPGRT_CONFIG]: Conditionalize the install of gpgme-config. -- When system will migrate use of gpgrt-config and removal of gpg-error-config, gpgme-config will not be installed (but use gpgme.pc by gpgrt-config). Signed-off-by: NIIBE Yutaka <[email protected]>
2022-04-05core: Don't use internal __assuan functions.NIIBE Yutaka1-1/+1
* configure.ac (nanosleep): Detect. * src/assuan-support.c: Don't use __assuan_usleep. (my_socketpair): Don't use __assuan_socketpair. -- Signed-off-by: NIIBE Yutaka <[email protected]>
2022-03-28qt: Set default visibility of all symbols to hiddenIngo Klöcker1-0/+10
* configure.ac: Add -fvisibility=hidden to GPGME_QT_CFLAGS if gcc supports the flag. -- With this change all defined symbols are hidden by default, so that they are not exported anymore. All symbols that are part of the ABI and that shall still be exported are already marked as having default visibility. GnuPG-bug-id: 5906
2022-03-28cpp: Set default visibility of all symbols to hiddenIngo Klöcker1-2/+10
* configure.ac: Add -fvisibility=hidden to GPGME_CPP_CFLAGS if gcc supports the flag. * lang/cpp/src/Makefile.am (AM_CPPFLAGS): Add GPGME_CPP_CFLAGS. * m4/ax_gcc_func_attribute.m4: New. -- With this change all defined symbols are hidden by default, so that they are not exported anymore. All symbols that are part of the ABI and that shall still be exported are already marked as having default visibility. The m4 macro was taken from the website mentioned in the License header of the file. GnuPG-bug-id: 5906
2022-03-06Post release updatesWerner Koch1-1/+1
2022-03-06Release 1.17.1gpgme-1.17.1Werner Koch1-2/+2
* configure.ac: Bump QT LT version to C15/A0/R0.
2022-02-07Post release updatesWerner Koch1-1/+1
--
2022-02-07Release 1.17.0gpgme-1.17.0Werner Koch1-8/+8
2021-12-22build: Update for newer autoconf.NIIBE Yutaka1-3/+3
* configure.ac (AC_PREREQ): Require >= 2.69. (AC_CONFIG_HEADERS): Use it instead of AC_CONFIG_HEADER. -- Signed-off-by: NIIBE Yutaka <[email protected]>
2021-11-25posix: Use poll instead, when available, removing use of select.NIIBE Yutaka1-1/+1
* configure.ac (HAVE_POLL_H): Add the check. * src/ath.c [!HAVE_POLL_H] (ath_select): Enable conditionally. * src/posix-io.c [HAVE_POLL_H] (_gpgme_io_select_poll): Use poll. * tests/gpg/t-cancel.c [HAVE_POLL_H] (do_select): Use poll. * tests/gpg/t-eventloop.c [HAVE_POLL_H] (do_select): Use poll. -- GnuPG-bug-id: 2385 Signed-off-by: NIIBE Yutaka <[email protected]>
2021-08-13core: Use flexible array member if compiler has support.NIIBE Yutaka1-0/+1
* configure.ac (AC_C_FLEXIBLE_ARRAY_MEMBER): Add. * src/engine-gpg.c (struct arg_and_data_s): Use FLEXIBLE_ARRAY_MEMBER. (_add_arg): Use offsetof instead of sizeof. (add_data): Likewise. -- Before this fix, GCC 11 warns (with its bound checking feature). Signed-off-by: NIIBE Yutaka <[email protected]>
2021-06-24Post release updatesWerner Koch1-1/+1
--
2021-06-24Release 1.16.0gpgme-1.16.0Werner Koch1-11/+11
2021-05-27build: _DARWIN_C_SOURCE should be 1.NIIBE Yutaka1-1/+1
* configure.ac (*-apple-darwin*): Set _DARWIN_C_SOURCE 1. -- GnuPG-bug-id: 5440 Reported-by: Jay Freeman Signed-off-by: NIIBE Yutaka <[email protected]>
2021-01-08Post release updatesWerner Koch1-1/+1
--
2021-01-08Release 1.15.1gpgme-1.15.1Werner Koch1-5/+5
2020-11-20Revert "cpp: Use portable off_t size_t"Andre Heinecke1-2/+1
This reverts commit 88294023c196497cfa6737be262c8b0c09d2a3ce. -- This commit was too early and i needed to test more this is breaking more then it helps so for now revert it before we can do a proper solution.
2020-11-18cpp: Use portable off_t size_tAndre Heinecke1-1/+2
* configure.ac: Configure cpp data.h.in * lang/cpp/src/Makefile.am: Generate data.h * lang/cpp/src/data.cpp, lang/cpp/src/data.h: Use portable types. * lang/qt/src/Makefile.am: Include build dir. * lang/qt/tests/makefile.am: Include build dir. -- These kind of patches have been around for a while, IMO this should not create an ABI incompatbility for cases where it already works because the types should be the same so I think this is not an interface break. GnuPG-Bug-Id: T3996
2020-11-18build: Update with newer autoconf constructs.NIIBE Yutaka1-13/+13
* configure.ac: Use AC_USE_SYSTEM_EXTENSIONS instead of AC_GNU_SOURCE. Use AS_HELP_STRING instead of AC_HELP_STRING. * m4/libtool.m4: Update from libgpg-error. * m4/gpg-error.m4: Update from libgpg-error. * m4/libassuan.m4: Update from libassuan. Signed-off-by: NIIBE Yutaka <[email protected]>
2020-11-12Post release updatesWerner Koch1-1/+1
2020-11-12Release 1.15.0gpgme-1.15.0Werner Koch1-9/+9
* configure.ac: Bump LT versions to c=C35/A24/R0, cpp=C18/A13/R0, qt=C12/A5/R0. -- GnuPG-bug-id: 5131
2020-11-09Require at least libgpg-error 1.36Werner Koch1-1/+1
* configure.ac (NEED_GPG_ERROR_VERSION): Require 1.36. * src/cJSON.c: Remove code for older version. * src/engine.c (gpgme_get_engine_info): Ditto. * src/gpgme-json.c: Ditto. * src/op-support.c: Ditto. * src/util.h: Ditto. -- Libgpg-error 1.36 has been released more than 18 months ago so it is time to avoid hacks and require this verion. This will for example help Kleopatra to support PIV cards and improves the gpgme-json. Signed-off-by: Werner Koch <[email protected]>
2020-07-16Post release updatesWerner Koch1-1/+1
--
2020-07-16Release 1.14.0gpgme-1.14.0Werner Koch1-8/+8
* configure.ac: Bump LT versions to c=C34/A23/R0 cpp=C17/A11/R0 qt=C11/A4/R0. -- GnuPG-bug-id: 4996
2020-02-14python: Also detect python 3.9.Werner Koch1-1/+1
-- Signed-off-by: Werner Koch <[email protected]>
2019-11-04doc: Note the need for a base tag.Werner Koch1-3/+5
--
2019-06-13Post release updatesgpgme-1.14-baseWerner Koch1-2/+2
--
2019-06-13Release 1.13.1gpgme-1.13.1Werner Koch1-4/+4
* configure.ac: Bump LT versions to c=C33/A22/R1 cpp=C16/A10/R0 qt=C10/A3/R4. Signed-off-by: Werner Koch <[email protected]>
2019-05-06python: Make EXTRA_DIST files explicitAndre Heinecke1-1/+4
* configure.ac: Configure new Makefiles. * lang/python/Makefile.am: Remove dirs from extra dist and use subdirs. * lang/python/examples/Makefile.am, lang/python/src/Makefile.am, lang/python/doc/Makefile.am: New. Files that list EXTRA_DIST files. -- This is similar to what lang/js does by explicitly listing the files. This ensures that we have clean distribution tarballs without accidentall additions that just lay in the directory. GnuPG-Bug-Id: T4481
2019-05-03Always use maintainer mode -Wno cflagsAndre Heinecke1-15/+18
* configure.ac (CFLAGS): Move -Wno flags out of the maintainer mode. -- It makes sense to have more warnings in maintainer mode and not more warnings in release builds. GnuPG-Bug-Id: T4477
2019-03-26Post release updates.Werner Koch1-1/+1
--
2019-03-26Release GPGME 1.13.0gpgme-1.13.0Werner Koch1-7/+7
* configure.ac: Bump LT versions. For C to C33/A22/R0. For C++ to C15/A9/R0. For Qt to C10/A3/R3. Signed-off-by: Werner Koch <[email protected]>
2019-01-16build: With LD_LIBRARY_PATH defined, use --disable-new-dtags.NIIBE Yutaka1-0/+35
* configure.ac (LDADD_FOR_TESTS_KLUDGE): New for --disable-new-dtags. * tests/Makefile.am (LDADD): Use LDADD_FOR_TESTS_KLUDGE. * lang/cpp/tests/Makefile.am, lang/qt/tests/Makefile.am: Likewise. * tests/gpg/Makefile.am, tests/gpgsm/Makefile.am: Likewise. * tests/json/Makefile.am, tests/opassuan/Makefile.am: Likewise. -- GnuPG-bug-id: 4298 Signed-off-by: NIIBE Yutaka <[email protected]>
2018-12-17core: Silence newer compiler warnings.Werner Koch1-0/+2
* configure.ac: Add -Wno-format-truncation and -Wno-sizeof-pointer-div. * src/b64dec.c (_gpgme_b64dec_proc): Add fallthrough annotation. * src/cJSON.c (parse_string): Ditto. * src/gpgme-json.c (main): Ditto. -- gcc 8 enables a couple of new warnings. Some of them are useless for us. In particular: util.h:42:26: warning: division 'sizeof (char *) / sizeof (char)' does not compute the number of array elements [-Wsizeof-pointer-div] #define DIM(v) (sizeof(v)/sizeof((v)[0])) ^ trustlist.c:101:22: note: in expansion of macro 'DIM' if (strlen (p) == DIM(item->keyid) - 1) Which is a real standard way to use DIM, here the right hand side is equivalent to sizeof but nevertheless it is correct. Yes sir, we know C. The format string warnings I have seen were assuming that the time structure returns valued out of scope - but if the system is that broken, the s_n_printf catches this. Signed-off-by: Werner Koch <[email protected]>
2018-11-16core: Simplify the trace maros by using variadics.Werner Koch1-0/+1
* src/debug.h (TRACE_BEG, TRACE_LOG, TRACE_SUC): Use variadic macros and remove the TRACE_BEG1 et al. Change all users to always pass a format string. (TRACE): Ditto. * src/debug.c (_gpgme_debugf): New. * configure.ac <GCC>: Add -Wno-format-zero-length. -- This makes it easier for use to enable format checks. The zero-length format is required to allow for an empty format due to the comman problematic of __VA_ARGS__. Signed-off-by: Werner Koch <[email protected]>
2018-11-16Add SPDX identifiers to most source filesWerner Koch1-2/+3
-- Signed-off-by: Werner Koch <[email protected]>
2018-11-14tests: Add json testrunnerAndre Heinecke1-0/+1
* configure.ac: Configure makefile. * tests/Makefile.am: Run json tests if gpg tests are run. * tests/json/t-json.c: New testrunner for json tests. * tests/json/t-config.in, tests/json/t-config.out: First test. -- The idea of this test runner is that it only looks for parts in the output. This should allow it to write robust tests that check for the basics in the output but don't fail when the output is extended or slightly changed.
2018-11-12Fix the previous commit.NIIBE Yutaka1-0/+1
Signed-off-by: NIIBE Yutaka <[email protected]>
2018-11-12build: Provide gpgme.pc, generated by configure.NIIBE Yutaka1-0/+1
* configure.ac: Generate src/gpgme.pc. * src/Makefile.am (pkgconfigdir, pkgconfig_DATA): New. (EXTRA_DIST): Add gpgme.pc.in. * src/gpgme.pc.in: New. * src/gpgme-config.in: Use variables. -- Some usages of gpgme-config is not compatible to pkg-config style; The --glib option and --thread option which affect the output by --cflags or --libs are not supported by gpgme.pc. gpgme-config's embedding information for gpg-error and libassuan at the build time of gpgme is considered inflexible than pkg-config style. It is now handled by dependency of gpgme.pc (Requires field). To use gpgme.pc, newer libgpg-error (>= 1.33) and libassuan (>= 2.5.3) are required, which provide gpg-error.pc and libassuan.pc respectively. Signed-off-by: NIIBE Yutaka <[email protected]>
2018-11-08spelling: fix misspellingsDaniel Kahn Gillmor1-1/+1
Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2018-10-31w32: Remove all support for WindowsCEWerner Koch1-10/+1
* configure.ac: Remove WindwosCE support. * contrib/: Remove all; it was only used for WindowsCE. * src/w32-ce.c, src/w32-ce.h: Remove files. * src/Makefile.am (system_components): Remove these files. * src/ath.c, src/ath.h: Remove W32CE support. * src/data-compat.c (gpgme_data_new_from_filepart): Ditto. (gpgme_data_new_from_file): Ditto. * src/debug.c (debug_init, _gpgme_debug): Ditto. * src/gpgme-tool.c (gpgme_server): Ditto. (main): Ditto. * src/priv-io.h: Do not include w32-ce.h. * src/util.h: Remove WindowsCE support. * src/w32-io.c: Ditto. * src/w32-util.c: Ditto. * src/debug.h (TRACE_SUC4): New. -- There is no more hardware to test our code, the support for Windows CE terminated along time ago. Note that our code worked only with the old WindowsCE with that overall system limit of 31 processes. Signed-off-by: Werner Koch <[email protected]>
2018-10-18doc: convert more links to equivalent https:// URLsDaniel Kahn Gillmor1-2/+2
-- Signed-off-by: Daniel Kahn Gillmor <[email protected]>
2018-10-17python: Auto-check for all installed python versions.Werner Koch1-34/+10
* m4/python.m4 (AM_PATH_PYTHON): Add a 4th arg. * configure.ac (available_languages): Remove separate python2 and python3 and keep just python. Simplify test for pythons. Use an explicit list of python versions to test. -- This seems to be a starightforward chnage to support more than two python versions. I am not sure why we had that complicated thing before. On my box I get builds and run tests for 2.7, 3.4 and 3.5. If 3.6, 3.7 or 3.8 are installed they should also work. GnuPG-bug-id: 3354 Signed-off-by: Werner Koch <[email protected]>
2018-10-10build: Let configure create the VERSION file.NIIBE Yutaka1-46/+41
* autogen.sh: Update from libgpg-error. * configure.ac: Use mym4_version to create VERSION file. * Makefile.am (dist-hook): Do not create VERSION. (EXTRA_DIST): Add VERSION. -- GnuPG-bug-id: 3283 Signed-off-by: NIIBE Yutaka <[email protected]>
2018-10-09cpp: Add first manual testsAndre Heinecke1-0/+1
* lang/cpp/Makefile.am: Add tests subdir. * lang/cpp/tests/Makefile.am: New. * lang/cpp/tests/README, lang/cpp/tests/run-getkey.cpp, lang/cpp/tests/run-keylist.cpp: New. * configure.ac: Configure tests makefile. -- The autotests for c++ live in lang/qt/tests these tests are more for manual experiments to validate some functionality.
2018-10-08Post release updatesWerner Koch1-1/+1
--
2018-10-08Release 1.12.0gpgme-1.12.0Werner Koch1-7/+7
* configure.ac: Bump core LT version to C32/A21/R0. Bump C++ LT version to C14/A8/R0. * lang/qt/tests/Makefile.am (CLEANFILES): Add reader status files. * Makefile.am (EXTRA_DIST): Add conf/whatisthis. Signed-off-by: Werner Koch <[email protected]>
2018-10-05build: Move config.h to conf/config.hWerner Koch1-1/+1
* conf/: New dir. * configure.ac (AC_CONFIG_HEADER): Move header to conf dir. * doc/Makefile.am (mkdefsinc): Adjust rule. * lang/python/Makefile.am (copystamp): Ditto. -- C++ uses those stupid files without a suffix and thus the new standard header <version> as included by newer other libc++ versions may conflict with the VERSION file in out top directory. This change should solve the problem. GnuPG-bug-id: 4168 Signed-off-by: Werner Koch <[email protected]>
2018-08-21Remove js as language from configure.acAndre Heinecke1-23/+1
* configure.ac: Remove js language. -- It does not make much sense to integrate gpgme-js into the GPGME build system. gpgme-js will be distrbuted by it's users as part of the web extensions / their distribution as that is the JavaScript way. So they can use their tools etc. to compile gpgme-js JavaScript style, which is documented in the lang/js folder.
2018-07-19core: Blank out the plaintext after decryption failure.Werner Koch1-1/+10
* src/data.h (data_prop_t): New enum. (struct gpgme_data): Add field propidx. * src/data.c (property_t): New. (property_table, property_table_size, property_table_lock): New. (insert_into_property_table): New. (remove_from_property_table): New. (_gpgme_data_get_dserial): New. (_gpgme_data_set_prop): New. (_gpgme_data_get_prop): New. (_gpgme_data_new): Connect new object to property_table. (_gpgme_data_release): Remove from property_table. (gpgme_data_read): With DATA_PROP_BLANKOUT set don't fill the buffer. * src/data-mem.c (gpgme_data_release_and_get_mem): Likewise. * src/decrypt.c (struct op_data): Add field plaintext_dserial. (_gpgme_op_decrypt_init_result): Add arg plaintext and init new field. (_gpgme_decrypt_status_handler): Set DATA_PROP_BLANKOUT on decryption failure. (_gpgme_decrypt_start): Pass PLAIN to the init function. * src/decrypt-verify.c (decrypt_verify_start): Ditto. * configure.ac: Check for stdint.h and bail out if uint64_t is not available. -- This is a best effort feature to not output plaintext after a decryption failure (e.g. due to no or broken authenticated encryption). It always work when using a memory object and reading it after the decryption but it can't work reliable when the user is reading from the data object while the decryption process is still running. This is quite a large change because the data objects and the context objects are allowed to be owned by different threads. Thus a synchronization is needed and we do this with a global table of all data objects to which the context objects can do soft-linking via a unique data object serial number. Signed-off-by: Werner Koch <[email protected]>