Message ID | 20220202034852.31190-1-higashi@taiju.info |
---|---|
State | Accepted |
Headers | show |
Series | [bug#53536,v2] gnu: Include poppler-data with poppler. | expand |
Context | Check | Description |
---|---|---|
cbaines/comparison | success | View comparision |
cbaines/git branch | success | View Git branch |
cbaines/applying patch | success | View Laminar job |
cbaines/issue | success | View issue |
Am Mittwoch, dem 02.02.2022 um 12:48 +0900 schrieb Taiju HIGASHI: > --- > gnu/packages/djvu.scm | 1 - > gnu/packages/pdf.scm | 1 + > 2 files changed, 1 insertion(+), 1 deletion(-) > > diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm > index 07c77f318e..4773e408da 100644 > --- a/gnu/packages/djvu.scm > +++ b/gnu/packages/djvu.scm > @@ -159,7 +159,6 @@ (define-public pdf2djvu > ("exiv2" ,exiv2) > ("graphicsmagick" ,graphicsmagick) > ("poppler" ,poppler) > - ("poppler-data" ,poppler-data) > ("util-linux-lib" ,util-linux "lib"))) ; for libuuid > (arguments > `(#:test-target "test" > diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm > index d4e97e1d82..6894640317 100644 > --- a/gnu/packages/pdf.scm > +++ b/gnu/packages/pdf.scm > @@ -241,6 +241,7 @@ (define-public poppler > ("libtiff" ,libtiff) > ("lcms" ,lcms) > ("openjpeg" ,openjpeg) > + ("poppler-data", poppler-data) > ("zlib" ,zlib) > > ;; To build poppler-glib (as needed by Evince), we need > Cairo and > -- > 2.34.0 Note that the ChangeLog is missing here. It should be something along the lines of * gnu/packages/pdf.scm (poppler)[inputs]: Add poppler-data. * gnu/packages/djvu.scm (pdf2djvu)[inputs]: Remove poppler-data. In my personal opinion, adding and removing should be done in separate commits, as it appears that there are other ways in which a package can depend on poppler-data. On that note, I haven't built the package, so I need to ask you: are the contents of poppler-data now included in the install of poppler? If not, that might be a reason as to why gimp and glimpse are failing. Cheers
> I need to ask you: are the contents of poppler-data now included in the > install of poppler? If not, that might be a reason as to why gimp and > glimpse are failing. It is understood as follows. poppler (with poppler-data) 1. During the build process, poppler will check to see if poppler-data has been installed by pkg-config. 2. Newer versions of poppler depend on poppler-data directly, and pkg-config can detect poppler-data during the build process. gimp and glimpse (without poppler-data) 1. During the build process, gimp and glimpse will check to see if poppler-data has been installed by pkg-config. 2. gimp or glimpse depend on poppler-data indirectly, and pkg-config cannot detect poppler-data during the build process. The above is just a problem in the build process. Poppler knows where the poppler-data is during the build process, so the installed poppler can use it in its processing. I have confirmed in the poppler build log that poppler-data is detected. I have also confirmed that evince can render Japanese PDFs with the contents of this patch. I'll add the changelog and split the commits together at the end. Thanks
Hi, Am Mittwoch, dem 02.02.2022 um 22:35 +0900 schrieb Taiju HIGASHI: > > [...] > gimp and glimpse (without poppler-data) > > 1. During the build process, gimp and glimpse will check to see if > poppler-data > has been installed by pkg-config. > 2. gimp or glimpse depend on poppler-data indirectly, and pkg- > config > cannot detect poppler-data during the build process. Assertion (2) is wrong here: gimp's configure.ac directly checks for the existence of poppler-data. That makes it a direct dependency as far as I'm concerned, even if they only ever use it through poppler. > I have also confirmed that evince can render Japanese PDFs with the > contents of this patch. Good to know. > I'll add the changelog and split the commits together at the end. Thanks. @Leo I've heard that there's a Rust related world rebuild coming soon. Can we tack this feature onto that? Cheers
> Assertion (2) is wrong here: gimp's configure.ac directly checks for > the existence of poppler-data. That makes it a direct dependency as > far as I'm concerned, even if they only ever use it through poppler. I did not convey the context correctly. I thought I was describing the behavior of the gimp package with the poppler-data dependency removed (= gimp,which indirectly depend on poppler-data). In that state, gimp will fail to build because pkg-config cannot detect poppler-data during the build process. Therefore, I left the poppler-data dependency in gimp. I'm really sorry for my poor explanation.
Am Donnerstag, dem 03.02.2022 um 00:47 +0900 schrieb Taiju HIGASHI: > > Assertion (2) is wrong here: gimp's configure.ac directly checks for > > the existence of poppler-data. That makes it a direct dependency as > > far as I'm concerned, even if they only ever use it through poppler. > > I did not convey the context correctly. > > I thought I was describing the behavior of the gimp package with the > poppler-data dependency removed (= gimp,which indirectly depend on > poppler-data). > In that state, gimp will fail to build because pkg-config cannot detect > poppler-data during the build process. > Therefore, I left the poppler-data dependency in gimp. > > I'm really sorry for my poor explanation. Again, w.r.t. your explanation I claim that gimp does not "indirectly" depend on poppler-data, but directly. Voilà, le configure.ac [1]. [1] https://gitlab.gnome.org/GNOME/gimp/-/blob/GIMP_2_10_30/configure.ac#L2023-L2024
> > > Assertion (2) is wrong here: gimp's configure.ac directly checks for > > > the existence of poppler-data. That makes it a direct dependency as > > > far as I'm concerned, even if they only ever use it through poppler. > > > > I did not convey the context correctly. > > > > I thought I was describing the behavior of the gimp package with the > > poppler-data dependency removed (= gimp,which indirectly depend on > > poppler-data). > > In that state, gimp will fail to build because pkg-config cannot detect > > poppler-data during the build process. > > Therefore, I left the poppler-data dependency in gimp. > > > > I'm really sorry for my poor explanation. > Again, w.r.t. your explanation I claim that gimp does not "indirectly" > depend on poppler-data, but directly. Voilà, le configure.ac [1]. > > Assertion (2) is wrong here: gimp's configure.ac directly checks for > > the existence of poppler-data. That makes it a direct dependency as > > far as I'm concerned, even if they only ever use it through poppler. > > I did not convey the context correctly. > > I thought I was describing the behavior of the gimp package with the > poppler-data dependency removed (= gimp,which indirectly depend on > poppler-data). > In that state, gimp will fail to build because pkg-config cannot detect > poppler-data during the build process. > Therefore, I left the poppler-data dependency in gimp. > > I'm really sorry for my poor explanation. Your assertion that the Gimp depends on poppler-data directly, not indirectly, is absolutely true and correct. As you pointed out, the gimp source code definitely depends directly on poppler-data, so it can't be built without poppler-data. I was describing the removal of poppler-data from the input in the Gimp package definition as "gimp indirectly depends on poppler-data", which complicated the claim. I apologize for that.
diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm index 07c77f318e..4773e408da 100644 --- a/gnu/packages/djvu.scm +++ b/gnu/packages/djvu.scm @@ -159,7 +159,6 @@ (define-public pdf2djvu ("exiv2" ,exiv2) ("graphicsmagick" ,graphicsmagick) ("poppler" ,poppler) - ("poppler-data" ,poppler-data) ("util-linux-lib" ,util-linux "lib"))) ; for libuuid (arguments `(#:test-target "test" diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index d4e97e1d82..6894640317 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -241,6 +241,7 @@ (define-public poppler ("libtiff" ,libtiff) ("lcms" ,lcms) ("openjpeg" ,openjpeg) + ("poppler-data", poppler-data) ("zlib" ,zlib) ;; To build poppler-glib (as needed by Evince), we need Cairo and