]> pd.if.org Git - zpackage/commitdiff
add library dependency views
authorNathan Wagner <nw@hydaspes.if.org>
Wed, 14 Nov 2018 17:57:20 +0000 (17:57 +0000)
committerNathan Wagner <nw@hydaspes.if.org>
Wed, 14 Nov 2018 17:57:20 +0000 (17:57 +0000)
db.sql

diff --git a/db.sql b/db.sql
index aadd91df9e24403814219cf3096c78d239bc141b..548dba8bcca125c6d5533814a75d8d21f22298e3 100644 (file)
--- a/db.sql
+++ b/db.sql
@@ -288,6 +288,27 @@ create table elfneeded (
 without rowid
 ;
 
+create view package_libraries as
+select distinct PF.pkgid, EL.soname
+from packagefiles_pkgid PF join elflibraries EL on PF.hash = EL.file
+;
+
+create view package_libraries_needed as
+with pkglibs as (
+               select distinct EN.needed as soname, PF.pkgid
+               from elfneeded EN
+               join packagefiles_pkgid PF on PF.hash = EN.file
+               ),
+     pkgprovides as (
+                    select distinct EL.soname, PF.pkgid
+                    from elflibraries EL
+                    join packagefiles_pkgid PF on PF.hash = EL.file
+                   )
+     select distinct PL.pkgid,PL.soname, PP.soname is not null as selfsatisfied
+     from pkglibs PL
+     left join pkgprovides PP on PL.pkgid = PP.pkgid and PL.soname = PP.soname
+;
+
 -- package scripts: table of package, stage, file
 create table scripts (
        package text,