Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 834792 - dev-lang/luajit-2.1.0_beta3_p20220127-r1 breaks compilation of consumers
Summary: dev-lang/luajit-2.1.0_beta3_p20220127-r1 breaks compilation of consumers
Status: RESOLVED INVALID
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Linux bug wranglers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-03-08 16:00 UTC by Holger Hoffstätte
Modified: 2022-03-08 17:11 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 Holger Hoffstätte 2022-03-08 16:00:35 UTC
After updating to luajit-2.1.0_beta3_p20220127-r1 some consumers cannot be rebuilt because the package is no longer found. This seems to be related to pkgconfig or whatever e.g. cmake's find_package() uses.
Downgrading to luajit-2.0.5 fixed the issue.



Reproducible: Always

Steps to Reproduce:
1. update to luajit-2.1.0_beta3_p20220127-r1
2. rebuild e.g. sysdig
3. build error
Actual Results:  
- Check for working CXX compiler: /usr/bin/x86_64-pc-linux-gnu-g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find Lua51 (missing: LUA_LIBRARIES LUA_INCLUDE_DIR) 
CMake Error at CMakeLists.txt:166 (message):
  Couldn't find system LuaJIT or Lua

The block in CMakeLists.txt looks like one would expect, and which works fine with luajit-2.0.5:

       # alternatively try stock Lua
        find_package(Lua51)
        set(LUAJIT_LIB ${LUA_LIBRARY})
        set(LUAJIT_INCLUDE ${LUA_INCLUDE_DIR})

        if(NOT ${LUA51_FOUND})
            message(FATAL_ERROR "Couldn't find system LuaJIT or Lua")
        endif()



Expected Results:  
Successful build of consumer package
Comment 1 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-03-08 16:05:18 UTC
I think it might be useful to file bugs for individual consumers which break. Some of the fixes I've seen for said packages seem legitimate.
Comment 2 Holger Hoffstätte 2022-03-08 16:22:13 UTC
(In reply to Sam James from comment #1)
> I think it might be useful to file bugs for individual consumers which
> break. Some of the fixes I've seen for said packages seem legitimate.

Filing n duplicated bug reports when 2.1.0_beta3_p20220127-r1 is still an unstable snapshot creates more work than figuring out what's wrong and fix it once. Also some of the things I have are either unmaintained or custom ebuilds.
I'll try using sysdig as driver for analysing *this* particular problem and then we can see what's wrong.
Comment 3 Holger Hoffstätte 2022-03-08 16:57:29 UTC
Sigh..looks like it's a problem with sysdig only; other packages I have either don't use CMake or do gross things like ldd the luajit executable to find the lib (bcc). Anyway, the reason seems to be:

if(NOT USE_BUNDLED_LUAJIT)
    find_path(LUAJIT_INCLUDE luajit.h PATH_SUFFIXES luajit-2.0 luajit)
    find_library(LUAJIT_LIB NAMES luajit luajit-5.1)

Since 2.1.0_beta3_p20220127-r1 has changed its directory name to 2.1 the header is not found. Simply adding 2.1 in makes ot works and looks like the fastest route to success, since luajit-2.1 is still lua-5.1.

I'll close this and file a bug for sysdig when I have something (not sure if that even still builds at all).
Comment 4 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-03-08 17:00:55 UTC
(In reply to Holger Hoffstätte from comment #2)
> (In reply to Sam James from comment #1)
> > I think it might be useful to file bugs for individual consumers which
> > break. Some of the fixes I've seen for said packages seem legitimate.
> 
> Filing n duplicated bug reports when 2.1.0_beta3_p20220127-r1 is still an
> unstable snapshot creates more work than figuring out what's wrong and fix
> it once. Also some of the things I have are either unmaintained or custom
> ebuilds.
> I'll try using sysdig as driver for analysing *this* particular problem and
> then we can see what's wrong.

I specifically said it because I'd seen some of the fixes were really straightforward in adding another parameter to CMake, so I was suspicious about luajit itself being really to blame :)
Comment 5 Holger Hoffstätte 2022-03-08 17:09:34 UTC
It gets worse :D - now that I have a patch for the configure phase it fails to build because $incompatible_changes. *sob*
But apparently there is something upstream already:
https://github.com/draios/sysdig/pull/921/commits/1147b9a4f6f1f9e97b43735e7980da387837de4a

*sigh*
Comment 6 Holger Hoffstätte 2022-03-08 17:10:51 UTC
Closing as invalid since the problem is somewhere else.
Comment 7 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-03-08 17:11:27 UTC
(In reply to Holger Hoffstätte from comment #6)
> Closing as invalid since the problem is somewhere else.

np; just ping me/file a bug and i'll merge whatever is needed to get sysdig working. ideally it'll be a PR tho ;)