summarylogtreecommitdiffstats
path: root/openjpeg.patch
blob: b666a09669e77d8fc1d94b0570d72b108a02d246 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
description: build using system openjpeg
author: Michael Gilbert <mgilbert@debian.org>

--- a/third_party/pdfium/third_party/BUILD.gn
+++ b/third_party/pdfium/third_party/BUILD.gn
@@ -366,39 +366,11 @@ config("fx_libopenjpeg_warnings") {
   }
 }
 
-static_library("fx_libopenjpeg") {
-  configs -= [ "//build/config/compiler:chromium_code" ]
-  configs += [
-    "//build/config/compiler:no_chromium_code",
-    "//build/config/sanitizers:cfi_icall_generalize_pointers",
-    ":pdfium_third_party_config",
-
-    # Must be after no_chromium_code for warning flags to be ordered correctly.
-    ":fx_libopenjpeg_warnings",
-  ]
-  sources = [
-    "libopenjpeg20/bio.c",
-    "libopenjpeg20/cio.c",
-    "libopenjpeg20/dwt.c",
-    "libopenjpeg20/event.c",
-    "libopenjpeg20/function_list.c",
-    "libopenjpeg20/image.c",
-    "libopenjpeg20/invert.c",
-    "libopenjpeg20/j2k.c",
-    "libopenjpeg20/jp2.c",
-    "libopenjpeg20/mct.c",
-    "libopenjpeg20/mqc.c",
-    "libopenjpeg20/openjpeg.c",
-    "libopenjpeg20/opj_clock.c",
-    "libopenjpeg20/pi.c",
-    "libopenjpeg20/sparse_array.c",
-    "libopenjpeg20/sparse_array.h",
-    "libopenjpeg20/t1.c",
-    "libopenjpeg20/t2.c",
-    "libopenjpeg20/tcd.c",
-    "libopenjpeg20/tgt.c",
-    "libopenjpeg20/thread.c",
-  ]
+pkg_config("libopenjpeg_from_pkgconfig") {
+  packages = [ "libopenjp2" ]
+}
+group("fx_libopenjpeg") {
+  public_configs = [ ":libopenjpeg_from_pkgconfig" ]
 }
 
 config("system_libpng_config") {
--- a/third_party/pdfium/core/fxcodec/codec/codec_int.h
+++ b/third_party/pdfium/core/fxcodec/codec/codec_int.h
@@ -15,7 +15,7 @@
 #include <vector>
 
 #include "core/fxcodec/jbig2/JBig2_Context.h"
-#include "third_party/libopenjpeg20/openjpeg.h"
+#include <openjpeg-2.3/openjpeg.h>
 
 class CPDF_ColorSpace;
 
--- a/third_party/pdfium/core/fxcodec/codec/fx_codec_jpx_opj.cpp
+++ b/third_party/pdfium/core/fxcodec/codec/fx_codec_jpx_opj.cpp
@@ -16,8 +16,6 @@
 #include "core/fxcrt/fx_memory.h"
 #include "core/fxcrt/fx_safe_types.h"
 #include "third_party/base/ptr_util.h"
-#include "third_party/libopenjpeg20/openjpeg.h"
-#include "third_party/libopenjpeg20/opj_malloc.h"
 
 namespace {
 
@@ -514,7 +512,6 @@ bool CJPX_Decoder::Init(pdfium::span<con
     return false;
 
   m_Image = pTempImage;
-  m_Image->pdfium_use_colorspace = !!m_ColorSpace;
 
   if (!m_Parameters.nb_tile_to_decode) {
     if (!opj_set_decode_area(m_Codec.Get(), m_Image.Get(), m_Parameters.DA_x0,
@@ -548,7 +545,7 @@ bool CJPX_Decoder::Init(pdfium::span<con
     // TODO(palmer): Using |opj_free| here resolves the crash described in
     // https://crbug.com/737033, but ultimately we need to harmonize the
     // memory allocation strategy across OpenJPEG and its PDFium callers.
-    opj_free(m_Image->icc_profile_buf);
+    free(m_Image->icc_profile_buf);
     m_Image->icc_profile_buf = nullptr;
     m_Image->icc_profile_len = 0;
   }
--- a/third_party/pdfium/core/fxcodec/codec/cjpx_decoder.h
+++ b/third_party/pdfium/core/fxcodec/codec/cjpx_decoder.h
@@ -13,7 +13,7 @@
 #include "core/fxcodec/codec/codec_int.h"
 #include "core/fxcrt/unowned_ptr.h"
 #include "third_party/base/span.h"
-#include "third_party/libopenjpeg20/openjpeg.h"
+#include <openjpeg-2.3/openjpeg.h>
 
 class CPDF_ColorSpace;
 
--- a/third_party/pdfium/BUILD.gn
+++ b/third_party/pdfium/BUILD.gn
@@ -21,7 +21,6 @@ config("pdfium_common_config") {
   ldflags = []
   include_dirs = [ "." ]
   defines = [
-    "OPJ_STATIC",
     "PNG_PREFIX",
     "PNG_USE_READ_MACROS",
   ]
@@ -75,7 +74,6 @@ config("pdfium_core_config") {
   if (is_linux) {
     if (current_cpu == "x64") {
       defines += [ "_FX_CPU_=_FX_X64_" ]
-      cflags += [ "-fPIC" ]
     } else if (current_cpu == "x86") {
       defines += [ "_FX_CPU_=_FX_X86_" ]
     }