gnu: emacs-pdf-tools: Fix build with recent Poppler.
* gnu/packages/patches/emacs-pdf-tools-poppler.patch: New file. * gnu/packages/emacs.scm (emacs-pdf-tools)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Add it.
This commit is contained in:
		
							parent
							
								
									c3d8c6ac7e
								
							
						
					
					
						commit
						e555bbfc48
					
				
					 3 changed files with 44 additions and 1 deletions
				
			
		|  | @ -667,6 +667,7 @@ dist_patch_DATA =						\ | ||||||
|   %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
 |   %D%/packages/patches/emacs-fix-scheme-indent-function.patch	\
 | ||||||
|   %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
 |   %D%/packages/patches/emacs-json-reformat-fix-tests.patch	\
 | ||||||
|   %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
 |   %D%/packages/patches/emacs-highlight-stages-add-gexp.patch	\
 | ||||||
|  |   %D%/packages/patches/emacs-pdf-tools-poppler.patch		\
 | ||||||
|   %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch	\
 |   %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch	\
 | ||||||
|   %D%/packages/patches/emacs-source-date-epoch.patch		\
 |   %D%/packages/patches/emacs-source-date-epoch.patch		\
 | ||||||
|   %D%/packages/patches/emacs-realgud-fix-configure-ac.patch	\
 |   %D%/packages/patches/emacs-realgud-fix-configure-ac.patch	\
 | ||||||
|  |  | ||||||
|  | @ -1601,7 +1601,8 @@ filters, new key bindings and faces.  It can be enabled by | ||||||
|               (file-name (git-file-name name version)) |               (file-name (git-file-name name version)) | ||||||
|               (sha256 |               (sha256 | ||||||
|                (base32 |                (base32 | ||||||
|                 "1i4647vax5na73basc5dz4lh9kprir00fh8ps4i0l1y3ippnjs2s")))) |                 "1i4647vax5na73basc5dz4lh9kprir00fh8ps4i0l1y3ippnjs2s")) | ||||||
|  |               (patches (search-patches "emacs-pdf-tools-poppler.patch")))) | ||||||
|     (build-system gnu-build-system) |     (build-system gnu-build-system) | ||||||
|     (arguments |     (arguments | ||||||
|      `(#:tests? #f ; there are no tests |      `(#:tests? #f ; there are no tests | ||||||
|  |  | ||||||
							
								
								
									
										41
									
								
								gnu/packages/patches/emacs-pdf-tools-poppler.patch
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										41
									
								
								gnu/packages/patches/emacs-pdf-tools-poppler.patch
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,41 @@ | ||||||
|  | Fix build issue with recent Poppler: | ||||||
|  |   <https://github.com/politza/pdf-tools/issues/372>. | ||||||
|  | 
 | ||||||
|  | This combines upstream commits | ||||||
|  | 6cd76dec9aece2a8daa90f17ab77fbf773157a1d..50a5297b82e26cfd52f6c00645ddc1057099d6a7 | ||||||
|  | for this file. | ||||||
|  | 
 | ||||||
|  | diff --git a/server/poppler-hack.cc b/server/poppler-hack.cc
 | ||||||
|  | index 0c62f73..427f9df 100644
 | ||||||
|  | --- a/server/poppler-hack.cc
 | ||||||
|  | +++ b/server/poppler-hack.cc
 | ||||||
|  | @@ -51,7 +51,10 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST;
 | ||||||
|  |      double y2; | ||||||
|  |    }; | ||||||
|  |   | ||||||
|  | -  char *_xpoppler_goo_string_to_utf8(GooString *s)
 | ||||||
|  | +  // This function does not modify its argument s, but for
 | ||||||
|  | +  // compatibility reasons (e.g. getLength in GooString.h before 2015)
 | ||||||
|  | +  // with older poppler code, it can't be declared as such.
 | ||||||
|  | +  char *_xpoppler_goo_string_to_utf8(/* const */ GooString *s)
 | ||||||
|  |    { | ||||||
|  |      char *result; | ||||||
|  |   | ||||||
|  | @@ -85,7 +88,7 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST;
 | ||||||
|  |    // Set the rectangle of an annotation.  It was first added in v0.26. | ||||||
|  |    void xpoppler_annot_set_rectangle (PopplerAnnot *a, PopplerRectangle *rectangle) | ||||||
|  |    { | ||||||
|  | -    GooString *state = a->annot->getAppearState ();
 | ||||||
|  | +    GooString *state = (GooString*) a->annot->getAppearState ();
 | ||||||
|  |      char *ustate = _xpoppler_goo_string_to_utf8 (state); | ||||||
|  |   | ||||||
|  |      a->annot->setRect (rectangle->x1, rectangle->y1, | ||||||
|  | @@ -105,7 +108,7 @@ GType poppler_annot_markup_get_type (void) G_GNUC_CONST;
 | ||||||
|  |      g_return_val_if_fail (POPPLER_IS_ANNOT_MARKUP (poppler_annot), NULL); | ||||||
|  |   | ||||||
|  |      annot = static_cast<AnnotMarkup *>(POPPLER_ANNOT (poppler_annot)->annot); | ||||||
|  | -    text = annot->getDate ();
 | ||||||
|  | +    text = (GooString*) annot->getDate ();
 | ||||||
|  |   | ||||||
|  |      return text ? _xpoppler_goo_string_to_utf8 (text) : NULL; | ||||||
|  |    } | ||||||
		Reference in a new issue