@@ -21,41 +21,7 @@ configure_file(
21
21
22
22
install_headers (' jmorecfg.h' , ' jerror.h' , ' jpeglib.h' , jconfig_h)
23
23
24
- jpeg16_sources = [
25
- ' jcapistd.c' ,
26
- ' jccolor.c' ,
27
- ' jcdiffct.c' ,
28
- ' jclossls.c' ,
29
- ' jcmainct.c' ,
30
- ' jcprepct.c' ,
31
- ' jcsample.c' ,
32
- ' jdapistd.c' ,
33
- ' jdcolor.c' ,
34
- ' jddiffct.c' ,
35
- ' jdlossls.c' ,
36
- ' jdmainct.c' ,
37
- ' jdpostct.c' ,
38
- ' jdsample.c' ,
39
- ' jutils.c' ,
40
- ]
41
- jpeg12_sources = [
42
- jpeg16_sources,
43
- ' jccoefct.c' ,
44
- ' jcdctmgr.c' ,
45
- ' jdcoefct.c' ,
46
- ' jddctmgr.c' ,
47
- ' jdmerge.c' ,
48
- ' jfdctfst.c' ,
49
- ' jfdctint.c' ,
50
- ' jidctflt.c' ,
51
- ' jidctfst.c' ,
52
- ' jidctint.c' ,
53
- ' jidctred.c' ,
54
- ' jquant1.c' ,
55
- ' jquant2.c' ,
56
- ]
57
- sources = [
58
- jpeg12_sources,
24
+ sources = files (
59
25
' jcapimin.c' ,
60
26
' jchuff.c' ,
61
27
' jcicc.c' ,
@@ -83,30 +49,92 @@ sources = [
83
49
' jmemmgr.c' ,
84
50
' jmemnobs.c' ,
85
51
' jpeg_nbits.c' ,
86
- # TODO: `with_arith_dec` / `with_arith_enc` only.
52
+ ' wrapper/jcapistd-12.c' ,
53
+ ' wrapper/jcapistd-16.c' ,
54
+ ' wrapper/jcapistd-8.c' ,
55
+ ' wrapper/jccoefct-12.c' ,
56
+ ' wrapper/jccoefct-8.c' ,
57
+ ' wrapper/jccolor-12.c' ,
58
+ ' wrapper/jccolor-16.c' ,
59
+ ' wrapper/jccolor-8.c' ,
60
+ ' wrapper/jcdctmgr-12.c' ,
61
+ ' wrapper/jcdctmgr-8.c' ,
62
+ ' wrapper/jcdiffct-12.c' ,
63
+ ' wrapper/jcdiffct-16.c' ,
64
+ ' wrapper/jcdiffct-8.c' ,
65
+ ' wrapper/jclossls-12.c' ,
66
+ ' wrapper/jclossls-16.c' ,
67
+ ' wrapper/jclossls-8.c' ,
68
+ ' wrapper/jcmainct-12.c' ,
69
+ ' wrapper/jcmainct-16.c' ,
70
+ ' wrapper/jcmainct-8.c' ,
71
+ ' wrapper/jcprepct-12.c' ,
72
+ ' wrapper/jcprepct-16.c' ,
73
+ ' wrapper/jcprepct-8.c' ,
74
+ ' wrapper/jcsample-12.c' ,
75
+ ' wrapper/jcsample-16.c' ,
76
+ ' wrapper/jcsample-8.c' ,
77
+ ' wrapper/jdapistd-12.c' ,
78
+ ' wrapper/jdapistd-16.c' ,
79
+ ' wrapper/jdapistd-8.c' ,
80
+ ' wrapper/jdcoefct-12.c' ,
81
+ ' wrapper/jdcoefct-8.c' ,
82
+ ' wrapper/jdcolor-12.c' ,
83
+ ' wrapper/jdcolor-16.c' ,
84
+ ' wrapper/jdcolor-8.c' ,
85
+ ' wrapper/jddctmgr-12.c' ,
86
+ ' wrapper/jddctmgr-8.c' ,
87
+ ' wrapper/jddiffct-12.c' ,
88
+ ' wrapper/jddiffct-16.c' ,
89
+ ' wrapper/jddiffct-8.c' ,
90
+ ' wrapper/jdlossls-12.c' ,
91
+ ' wrapper/jdlossls-16.c' ,
92
+ ' wrapper/jdlossls-8.c' ,
93
+ ' wrapper/jdmainct-12.c' ,
94
+ ' wrapper/jdmainct-16.c' ,
95
+ ' wrapper/jdmainct-8.c' ,
96
+ ' wrapper/jdmerge-12.c' ,
97
+ ' wrapper/jdmerge-8.c' ,
98
+ ' wrapper/jdpostct-12.c' ,
99
+ ' wrapper/jdpostct-16.c' ,
100
+ ' wrapper/jdpostct-8.c' ,
101
+ ' wrapper/jdsample-12.c' ,
102
+ ' wrapper/jdsample-16.c' ,
103
+ ' wrapper/jdsample-8.c' ,
104
+ ' wrapper/jfdctfst-12.c' ,
105
+ ' wrapper/jfdctfst-8.c' ,
106
+ ' wrapper/jfdctint-12.c' ,
107
+ ' wrapper/jfdctint-8.c' ,
108
+ ' wrapper/jidctflt-12.c' ,
109
+ ' wrapper/jidctflt-8.c' ,
110
+ ' wrapper/jidctfst-12.c' ,
111
+ ' wrapper/jidctfst-8.c' ,
112
+ ' wrapper/jidctint-12.c' ,
113
+ ' wrapper/jidctint-8.c' ,
114
+ ' wrapper/jidctred-12.c' ,
115
+ ' wrapper/jidctred-8.c' ,
116
+ ' wrapper/jquant1-12.c' ,
117
+ ' wrapper/jquant1-8.c' ,
118
+ ' wrapper/jquant2-12.c' ,
119
+ ' wrapper/jquant2-8.c' ,
120
+ ' wrapper/jutils-12.c' ,
121
+ ' wrapper/jutils-16.c' ,
122
+ ' wrapper/jutils-8.c' ,
123
+ )
124
+
125
+ sources += files (
126
+ # TODO: `with_arith_dec` / `with_arith_enc` only.
87
127
' jaricom.c' ,
88
128
# TODO: `with_arith_enc` only
89
129
' jcarith.c' ,
90
130
# TODO: `with_arith_dec` only
91
131
' jdarith.c' ,
92
- ]
93
-
94
- jpeg12 = static_library (
95
- ' jpeg12' ,
96
- jpeg12_sources,
97
- c_args : [' -DBITS_IN_JSAMPLE=12' ],
98
- pic : get_option (' default_library' ) != ' static' ,
99
- )
100
- jpeg16 = static_library (
101
- ' jpeg16' ,
102
- jpeg16_sources,
103
- c_args : [' -DBITS_IN_JSAMPLE=16' ],
104
- pic : get_option (' default_library' ) != ' static' ,
105
132
)
133
+
106
134
jpeg = library (
107
135
' jpeg' ,
108
136
sources,
109
- link_whole : [jpeg12, jpeg16, simd] ,
137
+ link_whole : simd,
110
138
soversion : so_version,
111
139
vs_module_defs : vs_defs,
112
140
install : true ,
@@ -122,41 +150,31 @@ jpeg_dep = declare_dependency(
122
150
include_directories : incdir,
123
151
link_with : jpeg,
124
152
)
125
-
126
153
meson .override_dependency(' libjpeg' , jpeg_dep)
127
154
128
155
if get_option (' turbojpeg' ).allowed()
129
156
install_headers (' turbojpeg.h' )
130
157
131
- turbojpeg12 = static_library (
132
- ' turbojpeg12' ,
133
- [' rdppm.c' , ' wrppm.c' ],
134
- c_args : [' -DBITS_IN_JSAMPLE=12' , ' -DPPM_SUPPORTED' ],
135
- pic : get_option (' default_library' ) != ' static' ,
136
- )
137
-
138
- turbojpeg16 = static_library (
139
- ' turbojpeg16' ,
140
- [' rdppm.c' , ' wrppm.c' ],
141
- c_args : [' -DBITS_IN_JSAMPLE=16' , ' -DPPM_SUPPORTED' ],
142
- pic : get_option (' default_library' ) != ' static' ,
143
- )
144
-
145
158
turbojpeg = library (
146
159
' turbojpeg' ,
147
- sources + [
148
- ' turbojpeg.c' ,
149
- ' transupp.c' ,
160
+ sources,
161
+ files (
150
162
' jdatadst-tj.c' ,
151
163
' jdatasrc-tj.c' ,
152
164
' rdbmp.c' ,
153
- ' rdppm.c' ,
165
+ ' transupp.c' ,
166
+ ' turbojpeg.c' ,
167
+ ' wrapper/rdppm-12.c' ,
168
+ ' wrapper/rdppm-16.c' ,
169
+ ' wrapper/rdppm-8.c' ,
170
+ ' wrapper/wrppm-12.c' ,
171
+ ' wrapper/wrppm-16.c' ,
172
+ ' wrapper/wrppm-8.c' ,
154
173
' wrbmp.c' ,
155
- ' wrppm.c' ,
156
- ],
174
+ ),
157
175
c_args : [' -DBMP_SUPPORTED' , ' -DPPM_SUPPORTED' ],
158
176
install : true ,
159
- link_with : [jpeg12, jpeg16, simd, turbojpeg12, turbojpeg16] ,
177
+ link_whole : simd,
160
178
soversion : ' 0.4.0' ,
161
179
)
162
180
@@ -170,16 +188,13 @@ if get_option('turbojpeg').allowed()
170
188
include_directories : incdir,
171
189
link_with : turbojpeg,
172
190
)
173
-
174
191
meson .override_dependency(' libturbojpeg' , turbojpeg_dep)
175
-
176
192
endif
177
193
178
194
if get_option (' tests' ).require(
179
195
get_option (' turbojpeg' ).allowed(),
180
196
error_message : ' turbojpeg feature needed' ,
181
197
).allowed()
182
-
183
198
tjunittest = executable (
184
199
' tjunittest' ,
185
200
[' tjunittest.c' , ' tjutil.c' , ' md5/md5.c' , ' md5/md5hl.c' ],
@@ -247,5 +262,4 @@ if get_option('tests').require(
247
262
timeout : 120 ,
248
263
)
249
264
endforeach
250
-
251
265
endif
0 commit comments