talloc's ABI check fails on my QNX system: ABI checks: ./script/abi_checks.sh[62]: ./script/mksigs.pl: No such file or directory exports check: OK --- talloc.signatures 2009-10-14 08:31:04.000000000 -0700 +++ talloc.signatures.check 2009-12-07 20:05:38.000000000 -0800 @@ -1,62 +0,0 @@ -char *talloc_asprintf (const void *, const char *, ...); -char *talloc_asprintf_append (char *, const char *, ...); -char *talloc_asprintf_append_buffer (char *, const char *, ...); -char *talloc_strdup (const void *, const char *); -char *talloc_strdup_append (char *, const char *); -char *talloc_strdup_append_buffer (char *, const char *); -char *talloc_strndup (const void *, const char *, size_t); -char *talloc_strndup_append (char *, const char *, size_t); -char *talloc_strndup_append_buffer (char *, const char *, size_t); -char *talloc_vasprintf (const void *, const char *, va_list); -char *talloc_vasprintf_append (char *, const char *, va_list); -char *talloc_vasprintf_append_buffer (char *, const char *, va_list); -const char *talloc_get_name (const void *); -const char *talloc_parent_name (const void *); -const char *talloc_set_name (const void *, const char *, ...); -int _talloc_free (void *, const char *); -int talloc_increase_ref_count (const void *); -int talloc_is_parent (const void *, const void *); -int talloc_unlink (const void *, void *); -int talloc_version_major (void); -int talloc_version_minor (void); -size_t talloc_get_size (const void *); -size_t talloc_reference_count (const void *); -size_t talloc_total_blocks (const void *); -size_t talloc_total_size (const void *); -void *_talloc (const void *, size_t); -void *_talloc_array (const void *, size_t, unsigned int, const char *); -void *_talloc_get_type_abort (const void *, const char *, const char *); -void *_talloc_memdup (const void *, const void *, size_t, const char *); -void *_talloc_move (const void *, const void *); -void *_talloc_realloc (const void *, void *, size_t, const char *); -void *_talloc_realloc_array (const void *, void *, size_t, unsigned int, const char *); -void *_talloc_reference_loc (const void *, const void *, const char *); -void *_talloc_steal_loc (const void *, const void *, const char *); -void *_talloc_zero (const void *, size_t, const char *); -void *_talloc_zero_array (const void *, size_t, unsigned int, const char *); -void *talloc_autofree_context (void); -void *talloc_check_name (const void *, const char *); -void *talloc_find_parent_byname (const void *, const char *); -void *talloc_init (const char *, ...); -void *talloc_named (const void *, size_t, const char *, ...); -void *talloc_named_const (const void *, size_t, const char *); -void *talloc_parent (const void *); -void *talloc_pool (const void *, size_t); -void *talloc_realloc_fn (const void *, void *, size_t); -void *talloc_reparent (const void *, const void *, const void *); -void _talloc_set_destructor (const void *, int (*) (void *)); -void talloc_disable_null_tracking (void); -void talloc_enable_leak_report (void); -void talloc_enable_leak_report_full (void); -void talloc_enable_null_tracking (void); -void talloc_enable_null_tracking_no_autofree (void); -void talloc_free_children (void *); -void talloc_report (const void *, FILE *); -void talloc_report_depth_cb (const void *, int, int, void (*) (const void *, int, int, int, void *), void *); -void talloc_report_depth_file (const void *, int, int, FILE *); -void talloc_report_full (const void *, FILE *); -void talloc_set_abort_fn (void (*) (const char *)); -void talloc_set_log_fn (void (*) (const char *)); -void talloc_set_log_stderr (void); -void talloc_set_name_const (const void *, const char *); -void talloc_show_parents (const void *, FILE *); WARNING: possible ABI change detected in signatures! make: *** [abi_checks] Error 1 The shebang line of script/mksigs.pl contains /usr/bin/perl, which doesn't exist on my system. Perl is installed as /usr/local/bin/perl. This problem also appears to apply to tdb and tevent.
Not sure how we would go fixing it. /usr/bin/perl is the standard place afaik.
(In reply to comment #1) > Not sure how we would go fixing it. > /usr/bin/perl is the standard place afaik. There seem to be at least two ways to do it: * Use the AC_SAMBA_PERL macro from m4/check_perl.m4 to find perl and then generate the script using the correct path. * Use "#! /usr/bin/env perl" on the shebang line. Do you have a preference?
We should detect perl in configure and then let make call $PERL script/mksigs.pl
talloc uses waf now