]> pd.if.org Git - zpackage/blobdiff - db.sql
add man page shell
[zpackage] / db.sql
diff --git a/db.sql b/db.sql
index 48ff62587a052f0873fd9a1eb057e244aa396933..548dba8bcca125c6d5533814a75d8d21f22298e3 100644 (file)
--- a/db.sql
+++ b/db.sql
@@ -278,6 +278,7 @@ create table elflibraries (
 )
 without rowid
 ;
+create index elf_library_name_index on elflibraries(soname);
 
 create table elfneeded (
        file    text, -- hash of file
@@ -287,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,
@@ -373,6 +395,8 @@ create table repository (
        priority        integer not null default 1,
        refreshed       integer -- last refresh time
 );
+-- force the url to be repourl/info.repo
+-- package urls repourl/pkgid.zpm
 
 -- urls for downloading packages.  possibly unneeded
 create table repository_packages (