Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 750017 - net-fs/samba-4.11.11 does not register with avahi
Summary: net-fs/samba-4.11.11 does not register with avahi
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's SAMBA Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-10-18 22:04 UTC by Raul E Rangel
Modified: 2020-10-21 07:02 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Raul E Rangel 2020-10-18 22:04:28 UTC
I currently have avahi installed:
[ebuild   R    ] net-dns/avahi-0.8-r2::gentoo  USE="ipv6 nls -autoipd -bookmarks -dbus -doc -gdbm -gtk -gtk2 -howl-compat -introspection -mdnsresponder-compat -mono -python -qt5 (-selinux) -systemd -test" PYTHON_TARGETS="python3_7 -python3_6 -python3_8" 931 KiB


I patched the samba wscript to it looks like this:
    if Options.options.with_avahi:
        conf.env.with_avahi = True
        if not conf.CHECK_HEADERS('avahi-common/watch.h avahi-client/client.h'): conf.env.with_avahi = False
        if not conf.env.with_avahi:
            Logs.warn("Ww don't have headers")
            conf.fatal('BAD AVAHI.');
        if not conf.CHECK_FUNCS_IN('avahi_client_new', 'avahi-client'): conf.env.with_avahi = False
        if not conf.env.with_avahi:
            Logs.warn("WE don't have functions")
            conf.fatal('BAD AVAHI.');
        if not conf.CHECK_FUNCS_IN('avahi_strerror', 'avahi-common'): conf.env.with_avahi = False
        if not conf.env.with_avahi:
            Logs.warn("WE don't have stderr")
            conf.fatal('BAD AVAHI.');
        if conf.env.with_avahi:
            Logs.warn("WE HAVE AVAHI SUPPORT")
            conf.fatal('BAD AVAHI.');
            conf.DEFINE('WITH_AVAHI_SUPPORT', 1)
        else:
            Logs.warn("WE DON'T HAVE AVAHI SUPPORT")
            conf.fatal('BAD AVAHI.');

I get the following output:
Checking for header avahi-common/watch.h: yes
Checking for header avahi-client/client.h: no
WE don't have headers
BAD AVAHI.


Doing an equery f avahi:
/usr
/usr/include
/usr/include/avahi-common
/usr/include/avahi-common/address.h
/usr/include/avahi-common/alternative.h
/usr/include/avahi-common/cdecl.h
/usr/include/avahi-common/defs.h
/usr/include/avahi-common/domain.h
/usr/include/avahi-common/error.h
/usr/include/avahi-common/gccmacro.h
/usr/include/avahi-common/llist.h
/usr/include/avahi-common/malloc.h
/usr/include/avahi-common/rlist.h
/usr/include/avahi-common/simple-watch.h
/usr/include/avahi-common/strlst.h
/usr/include/avahi-common/thread-watch.h
/usr/include/avahi-common/timeval.h
/usr/include/avahi-common/watch.h
/usr/include/avahi-core
/usr/include/avahi-core/core.h
/usr/include/avahi-core/log.h
/usr/include/avahi-core/lookup.h
/usr/include/avahi-core/publish.h
/usr/include/avahi-core/rr.h
/usr/include/avahi-glib
/usr/include/avahi-glib/glib-malloc.h
/usr/include/avahi-glib/glib-watch.h
/usr/include/avahi-libevent
/usr/include/avahi-libevent/libevent-watch.h


Emerging avahi with +dbus

/usr/include
/usr/include/avahi-client
/usr/include/avahi-client/client.h
/usr/include/avahi-client/lookup.h
/usr/include/avahi-client/publish.h
/usr/include/avahi-common
/usr/include/avahi-common/address.h
/usr/include/avahi-common/alternative.h
/usr/include/avahi-common/cdecl.h
/usr/include/avahi-common/defs.h
/usr/include/avahi-common/domain.h
/usr/include/avahi-common/error.h
/usr/include/avahi-common/gccmacro.h
/usr/include/avahi-common/llist.h
/usr/include/avahi-common/malloc.h
/usr/include/avahi-common/rlist.h
/usr/include/avahi-common/simple-watch.h
/usr/include/avahi-common/strlst.h
/usr/include/avahi-common/thread-watch.h
/usr/include/avahi-common/timeval.h
/usr/include/avahi-common/watch.h
/usr/include/avahi-core
/usr/include/avahi-core/core.h
/usr/include/avahi-core/log.h
/usr/include/avahi-core/lookup.h
/usr/include/avahi-core/publish.h
/usr/include/avahi-core/rr.h
/usr/include/avahi-glib
/usr/include/avahi-glib/glib-malloc.h
/usr/include/avahi-glib/glib-watch.h
/usr/include/avahi-gobject
/usr/include/avahi-gobject/ga-client.h
/usr/include/avahi-gobject/ga-entry-group.h
/usr/include/avahi-gobject/ga-enums.h
/usr/include/avahi-gobject/ga-error.h
/usr/include/avahi-gobject/ga-record-browser.h
/usr/include/avahi-gobject/ga-service-browser.h
/usr/include/avahi-gobject/ga-service-resolver.h
/usr/include/avahi-libevent
/usr/include/avahi-libevent/libevent-watch.h

It looks like samba correctly finds the header and compiles the avahi module.
Checking for header avahi-common/watch.h: yes
Checking for header avahi-client/client.h: yes
Checking for library avahi-client: yes
Checking for avahi_client_new in avahi-client: ok
Checking for library avahi-common: yes
Checking for avahi_strerror in avahi-common: ok
WE HAVE AVAHI SUPPORT


So I think that the samba zeroconf flag needs to require avahi with the dbus flag.
Comment 1 Raul E Rangel 2020-10-20 22:09:08 UTC
Here is the PR: https://github.com/gentoo/gentoo/pull/17984
Comment 2 Larry the Git Cow gentoo-dev 2020-10-21 07:02:38 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f0d3c93dc37762dcb01f41e135ac7df7cad94db5

commit f0d3c93dc37762dcb01f41e135ac7df7cad94db5
Author:     Raul E Rangel <ismell@ismell.org>
AuthorDate: 2020-10-20 22:00:58 +0000
Commit:     Lars Wendler <polynomial-c@gentoo.org>
CommitDate: 2020-10-21 07:02:21 +0000

    net-fs/samba: Require dbus when using avahi
    
    The zeroconf USE flag pulls in avahi. In order for samba
    to communicate with avahi, the avahi-client must be
    present. The avahi-client is controlled via the dbus use
    flag.
    
    Signed-off-by: Raul E Rangel <ismell@ismell.org>
    Closes: https://github.com/gentoo/gentoo/pull/17984
    Closes: https://bugs.gentoo.org/750017
    Signed-off-by: Lars Wendler <polynomial-c@gentoo.org>

 net-fs/samba/{samba-4.11.11.ebuild => samba-4.11.11-r1.ebuild} | 2 +-
 net-fs/samba/{samba-4.11.13.ebuild => samba-4.11.13-r1.ebuild} | 2 +-
 net-fs/samba/{samba-4.12.6.ebuild => samba-4.12.6-r1.ebuild}   | 2 +-
 net-fs/samba/{samba-4.12.7.ebuild => samba-4.12.7-r1.ebuild}   | 2 +-
 net-fs/samba/{samba-4.13.0.ebuild => samba-4.13.0-r1.ebuild}   | 2 +-
 5 files changed, 5 insertions(+), 5 deletions(-)