[Bug 248270] audio/lmms bash completion script stages in PREFIX not STAGEDIR

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Sat Jul 25 22:43:15 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=248270

            Bug ID: 248270
           Summary: audio/lmms bash completion script stages in PREFIX not
                    STAGEDIR
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Individual Port(s)
          Assignee: rodrigo at FreeBSD.org
          Reporter: alt2600 at icloud.com
             Flags: maintainer-feedback?(rodrigo at FreeBSD.org)
          Assignee: rodrigo at FreeBSD.org

problem seems new after the July 12 portbump, but doesn't appear to come from
anything done in that portbump. I know since then at least bash moved to
/usr/local prefix but not sure its related. I have version 1.2.1,2 installed in
lmms, but it will not longer update due to missing staged files with
bash_completion


-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/themes/classic/style.css
-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/themes/default/style.css
-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/wavetables/moog.bin
-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/wavetables/saw.bin
-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/wavetables/sqr.bin
-- Installing:
/usr/ports/audio/lmms/work/stage/usr/local/share/lmms/wavetables/tri.bin

Installing bash completion...

Bash completion for lmms has been installed to
/usr/local/share/bash-completion/completions/lmms


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

/usr/ports/audio/lmms|$} ls -l
/usr/local/share/bash-completion/completions/lmms 
-rw-r--r--  1 root  wheel  9751 Jul 25 15:43
/usr/local/share/bash-completion/completions/lmms


>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>


make install or prefix fails as it is missing the lmms bash_completion script
which is already installed into prefix

line 30-51 of /usr/ports/audio/lmms/work/lmms-1.2.1/cmake/modules seems to be
the culprit of either falling back to hardcoded path or finding the correct
path from pkg-config but that breaks staging as it totally ignores the staging
prefix, but not sure why it would have seemingly worked before but not now. 

ELSE()
        INCLUDE(FindUnixCommands)
        # Honor manual override if provided
        IF(NOT BASHCOMP_PKG_PATH)
                # First, use pkg-config, which is the most reliable
                FIND_PACKAGE(PkgConfig QUIET)
                IF(PKGCONFIG_FOUND)
                        PKG_CHECK_MODULES(BASH_COMPLETION bash-completion)
                        PKG_GET_VARIABLE(BASHCOMP_PKG_PATH bash-completion
completionsdir)
                ELSE()
                        # Second, use cmake (preferred but less common)
                        FIND_PACKAGE(bash-completion QUIET)
                        IF(BASH_COMPLETION_FOUND)
                                SET(BASHCOMP_PKG_PATH
"${BASH_COMPLETION_COMPLETIONSDIR}")
                        ENDIF()
                ENDIF()

                # Third, use a hard-coded fallback value
                IF("${BASHCOMP_PKG_PATH}" STREQUAL "")
                        SET(BASHCOMP_PKG_PATH
"/usr/share/bash-completion/completions")
                ENDIF()
        ENDIF()

Not sure if I'm the only one having these issues, I'm pretty sure I could
update the patch to this file by adding deletions to this code to hardcode the
install to staging by forcing the BASHCOMP_PKG_PATH. Although I would likely
hard code it to a code of somesort and run a REPLACE_CMD post patch so it would
dynamically replace with the correct STAGEDIR during make if the source updates
to later versions and doesn't change these cmake modules it would still work.
Not sure how else to fix this. I've tried editing the port Makefile giving the 
BASHCOMP_PKG_PATH as a CONFIGURE_ENV which breaks the build and setting
CMAKE_ARGS to include setting this variable to the stagedir, but that didn't
seem to work either.

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list