poppler 0.20.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/ChangeLog +369 -0
- data/README +37 -0
- data/Rakefile +72 -0
- data/extconf.rb +49 -0
- data/sample/number-pdf.rb +32 -0
- data/sample/pdf2.rb +107 -0
- data/sample/pdf2svg.rb +26 -0
- data/sample/pdf2text.rb +16 -0
- data/sample/pdfdiv.rb +36 -0
- data/src/lib/poppler.rb +108 -0
- data/src/rbpoppler-action.c +222 -0
- data/src/rbpoppler-annotation.c +307 -0
- data/src/rbpoppler-attachment.c +116 -0
- data/src/rbpoppler-document.c +492 -0
- data/src/rbpoppler-form-field.c +291 -0
- data/src/rbpoppler-page.c +773 -0
- data/src/rbpoppler-private.h +56 -0
- data/src/rbpoppler.c +90 -0
- data/src/rbpoppler.h +60 -0
- data/src/rbpopplerversion.h +24 -0
- data/test/poppler-test-utils.rb +47 -0
- data/test/run-test.rb +27 -0
- data/test/test_annotation.rb +84 -0
- data/test/test_color.rb +26 -0
- data/test/test_constants.rb +30 -0
- data/test/test_document.rb +41 -0
- data/test/test_page.rb +78 -0
- metadata +122 -0
data/ChangeLog
ADDED
@@ -0,0 +1,369 @@
|
|
1
|
+
2010-06-02 Kouhei Sutou <kou@cozmixng.org>
|
2
|
+
|
3
|
+
* README: fix Ruby/Poppler license. It should be GPL not LGPL
|
4
|
+
because poppler is GPL not LGPL.
|
5
|
+
|
6
|
+
* COPYING.LIB: remove.
|
7
|
+
* COPYING: add.
|
8
|
+
|
9
|
+
2010-02-10 Kouhei Sutou <kou@cozmixng.org>
|
10
|
+
|
11
|
+
* sample/pdfdiv.rb: add.
|
12
|
+
|
13
|
+
2009-04-01 Kouhei Sutou <kou@cozmixng.org>
|
14
|
+
|
15
|
+
* src/lib/poppler.rb: ignore Gtk::InitError.
|
16
|
+
|
17
|
+
2008-11-03 Kouhei Sutou <kou@cozmixng.org>
|
18
|
+
|
19
|
+
* extconf.rb: remove needless checks.
|
20
|
+
|
21
|
+
* extconf.rb, README, src/: remove 0.6.x support. require 0.8.0 or
|
22
|
+
later.
|
23
|
+
|
24
|
+
2008-10-25 Kouhei Sutou <kou@cozmixng.org>
|
25
|
+
|
26
|
+
* test/test_constants.rb: use assert_{,not_}const_defined in
|
27
|
+
Test::Unit.
|
28
|
+
|
29
|
+
2008-09-13 Kouhei Sutou <kou@cozmixng.org>
|
30
|
+
|
31
|
+
* extconf.rb: use check_cairo.
|
32
|
+
|
33
|
+
2008-06-29 Kouhei Sutou <kou@cozmixng.org>
|
34
|
+
|
35
|
+
* test/test_document.rb (TestDocument#test_save):
|
36
|
+
omit if poppler < 0.8.2.
|
37
|
+
|
38
|
+
2008-06-14 Kouhei Sutou <kou@cozmixng.org>
|
39
|
+
|
40
|
+
* test/run-test.rb: use glib/test/glib-test-init.rb.
|
41
|
+
|
42
|
+
2008-06-11 Kouhei Sutou <kou@cozmixng.org>
|
43
|
+
|
44
|
+
* src/rbpoppler-action.c: fix an index bug.
|
45
|
+
|
46
|
+
* extconf.rb: include poppler.h in have_func test.
|
47
|
+
|
48
|
+
2008-05-23 Kouhei Sutou <kou@cozmixng.org>
|
49
|
+
|
50
|
+
* test/run-test.rb: use which not --version to detect make.
|
51
|
+
|
52
|
+
2008-05-13 Kouhei Sutou <kou@cozmixng.org>
|
53
|
+
|
54
|
+
* test/: use omit.
|
55
|
+
|
56
|
+
* test/test_document.rb, test/test_constants.rb: fix version check.
|
57
|
+
|
58
|
+
* test/test_constants.rb: followed the below changes.
|
59
|
+
|
60
|
+
* src/rbpoppler-annotation.c: support master at 2008-05-13.
|
61
|
+
|
62
|
+
* src/rbpoppler-page.c: add cairo availability check.
|
63
|
+
|
64
|
+
2008-04-22 Kouhei Sutou <kou@cozmixng.org>
|
65
|
+
|
66
|
+
* sample/number-pdf.rb: add.
|
67
|
+
|
68
|
+
2008-04-13 Kouhei Sutou <kou@cozmixng.org>
|
69
|
+
|
70
|
+
* extconf.rb: fix rcairo's source path.
|
71
|
+
|
72
|
+
2008-03-27 Kouhei Sutou <kou@cozmixng.org>
|
73
|
+
|
74
|
+
* README: added Ruby/GTK+ to Requirements.
|
75
|
+
|
76
|
+
2008-03-23 Kouhei Sutou <kou@cozmixng.org>
|
77
|
+
|
78
|
+
* src/rbpoppler.[ch], src/rbpoppler-private.h,
|
79
|
+
src/rbpoppler-page.c, src/rbpoppler-form-field.c: split form
|
80
|
+
field related codes.
|
81
|
+
|
82
|
+
* src/rbpoppler.h, src/rbpoppler-page.c, src/rbpoppler-action.c,
|
83
|
+
src/rbpoppler-document.c: added POPPLER_ prefix.
|
84
|
+
|
85
|
+
* src/rbpoppler.h, src/rbpoppler-page.c, src/rbpoppler-action.c:
|
86
|
+
hide conversion macros.
|
87
|
+
|
88
|
+
* src/rbpoppler.h, src/rbpoppler-page.c: COLOR -> POPPLER_COLOR.
|
89
|
+
|
90
|
+
* src/rbpoppler.h, src/rbpoppler-page.c: hid GDK related macros.
|
91
|
+
|
92
|
+
* src/rbpoppler.h, src/rbpoppler-page.c: RECT -> POPPLER_RECT.
|
93
|
+
|
94
|
+
* README: marked poppler-glib 0.8.0 is supported.
|
95
|
+
|
96
|
+
* src/rbpoppler-page.c: used DEF_* macro.
|
97
|
+
|
98
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
99
|
+
methods for Poppler::AnnotationCalloutLine.
|
100
|
+
|
101
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
102
|
+
methods for Poppler::AnnotationFreeText.
|
103
|
+
|
104
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
105
|
+
methods for Poppler::AnnotationText.
|
106
|
+
|
107
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
108
|
+
methods for Poppler::AnnotationMarkup.
|
109
|
+
|
110
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
111
|
+
methods for Poppler::Annotation.
|
112
|
+
|
113
|
+
* src/rbpoppler-page.c, src/rbpoppler.h: added POPPLER_COLOR2RVAL
|
114
|
+
and POPPLER_COLOR2RVAL_FREE.
|
115
|
+
|
116
|
+
* src/rbpoppler.[ch], src/rbpoppler-private.h: called
|
117
|
+
Init_annotation().
|
118
|
+
|
119
|
+
* src/rbpoppler-annotation.c, test/test_annotation.rb: implemented
|
120
|
+
Poppler::Annotation#type.
|
121
|
+
|
122
|
+
* src/rbpoppler-page.c:
|
123
|
+
- defined missing methods: Poppler::ButtonField#type and
|
124
|
+
Poppler::ChoiceField#toggle.
|
125
|
+
- defined Poppler::Rectangle#inspect.
|
126
|
+
|
127
|
+
* src/rbpoppler-page.c, test/test_page.rb: defined
|
128
|
+
Poppler::AnnotationMapping methods.
|
129
|
+
|
130
|
+
* src/rbpoppler-page.c: added missing static.
|
131
|
+
|
132
|
+
* src/rbpoppler-page.c, test/test_page.rb: implemented
|
133
|
+
Poppler::Page#annotation_mapping for 0.7.2.
|
134
|
+
|
135
|
+
2008-03-22 Kouhei Sutou <kou@cozmixng.org>
|
136
|
+
|
137
|
+
* src/rbpoppler-page.c (page_get_selection_region),
|
138
|
+
test/test_page.rb (TestPage#test_selection_region): implemented
|
139
|
+
Poppler::Page#get_selection_region for 0.7.2.
|
140
|
+
|
141
|
+
* src/rbpoppler-page.c, test/test_page.rb
|
142
|
+
(TestPage#test_thumbnail_pixbuf): implemented
|
143
|
+
Poppler::Page#thumbnail_pixbuf.
|
144
|
+
|
145
|
+
* src/rbpoppler-page.c (page_render_for_printing_generic),
|
146
|
+
test/test_page.rb (TestPage#test_render_to_pixbuf_for_printing):
|
147
|
+
implemented Poppler::Page#render_for_printing.
|
148
|
+
|
149
|
+
2008-03-21 Kouhei Sutou <kou@cozmixng.org>
|
150
|
+
|
151
|
+
* test/test_page.rb (TestPage#test_render_to_pixbuf): added.
|
152
|
+
|
153
|
+
2008-03-20 Kouhei Sutou <kou@cozmixng.org>
|
154
|
+
|
155
|
+
* src/rbpoppler-page.c: implemented Poppler::Page#image.
|
156
|
+
|
157
|
+
* test/poppler-test-utils.rb, test/test_page.rb: added a PDF that
|
158
|
+
contains images.
|
159
|
+
|
160
|
+
* test/test_page.rb: added.
|
161
|
+
|
162
|
+
* src/rbpoppler-document.c: implemented Poppler::Document#save_a_copy.
|
163
|
+
|
164
|
+
* test/test_document.rb: added.
|
165
|
+
|
166
|
+
* test/poppler-test-utils.rb: added.
|
167
|
+
* test/: used poppler-test-utils.rb.
|
168
|
+
|
169
|
+
* src/rbpoppler.[ch], src/rbpoppler-page.c: just buildable with
|
170
|
+
poppler-glib 0.7.3.
|
171
|
+
|
172
|
+
* test/: added.
|
173
|
+
|
174
|
+
* extconf.rb: fixed build error on Win32. [Patch #1843689]
|
175
|
+
Reported by Yaakov Selkowitz with a patch. Thanks!!!
|
176
|
+
|
177
|
+
2007-11-11 Kouhei Sutou <kou@cozmixng.org>
|
178
|
+
|
179
|
+
* README: updated supported poppler-glib version: 0.5.2 - 0.6.2.
|
180
|
+
|
181
|
+
2007-10-20 Kouhei Sutou <kou@cozmixng.org>
|
182
|
+
|
183
|
+
* sample/pdf2.rb: removed needless filename -> URI conversion.
|
184
|
+
|
185
|
+
* sample/pdf2svg.rb: added a new example that convert PDF to SVG.
|
186
|
+
|
187
|
+
2007-10-13 Kouhei Sutou <kou@cozmixng.org>
|
188
|
+
|
189
|
+
* src/: used POPPLER_CHECK_VERSION(0, 6, 0) not
|
190
|
+
POPPLER_CHECK_VERSION(0, 5, 9).
|
191
|
+
|
192
|
+
* README: updated supported poppler-glib version: 0.5.2 - 0.6.1.
|
193
|
+
|
194
|
+
* src/rbpoppler-document.c:
|
195
|
+
- used RVAL2DOC() not RVAL2GOBJ().
|
196
|
+
- supported 0.6.0.
|
197
|
+
|
198
|
+
* src/rbpoppler-attachment.c: supported 0.6.0.
|
199
|
+
|
200
|
+
2007-09-09 Kouhei Sutou <kou@cozmixng.org>
|
201
|
+
|
202
|
+
* src/rbpoppler-page.c: supported 0.6.0. Bug 1790607.
|
203
|
+
|
204
|
+
2007-07-27 Kouhei Sutou <kou@cozmixng.org>
|
205
|
+
|
206
|
+
* src/rbpoppler.h, src/rbpoppler-page.c: worked with poppler <
|
207
|
+
0.5.9 again.
|
208
|
+
|
209
|
+
* src/rbpoppler-document.c: used POPPLER_CHECK_VERSION(0, 5, 9)
|
210
|
+
instead of HAVE_POPPLER_FONT_INFO because my patch is accepted by
|
211
|
+
upstream.
|
212
|
+
|
213
|
+
* src/rbpoppler.c, src/rbpoppler-page.c: don't show
|
214
|
+
poppler_form_field_get_field_type().
|
215
|
+
|
216
|
+
* src/lib/poppler.rb, src/rbpoppler.h, src/rbpoppler-page.c:
|
217
|
+
followed the recent poppler form API changes but not tested
|
218
|
+
because I don't have a PDF with form...
|
219
|
+
|
220
|
+
2007-07-13 Guillaume Cottenceau
|
221
|
+
|
222
|
+
* src/rbpoppler-document.c, src/rbpoppler-page.c: replace RTEST
|
223
|
+
uses by RVAL2CBOOL
|
224
|
+
|
225
|
+
2007-07-13 Guillaume Cottenceau
|
226
|
+
|
227
|
+
* src/rbpoppler-document.c: "? Qtrue : QFalse" => CBOOL2RVAL
|
228
|
+
cleanup
|
229
|
+
|
230
|
+
2007-06-23 Kouhei Sutou <kou@cozmixng.org>
|
231
|
+
|
232
|
+
* src/rbpoppler.h, src/rbpoppler-page.c: followed new functions
|
233
|
+
and types in poppler-page.h. But this is not enough. We need more
|
234
|
+
works.
|
235
|
+
|
236
|
+
* src/rbpoppler-document.c, src/lib/poppler.rb: supported
|
237
|
+
Poppler::Document.new(pdf_data).
|
238
|
+
|
239
|
+
* src/rbpoppler.h (SELSTYLE2RVAL, RVAL2SELSTYLE): added.
|
240
|
+
|
241
|
+
* src/rbpoppler-page.c: followed API changes of
|
242
|
+
poppler_page_render_selection() family at 0.5.9.
|
243
|
+
|
244
|
+
* src/rbpoppler.c: added enum types appeared at 0.5.9.
|
245
|
+
|
246
|
+
* src/rbpoppler-action.c, src/rbpoppler-document.c: removed
|
247
|
+
needless variables.
|
248
|
+
|
249
|
+
2007-04-07 Kouhei Sutou <kou@cozmixng.org>
|
250
|
+
|
251
|
+
* src/rbpoppler-document.c (Poppler::Document#size): added a
|
252
|
+
convenient alias of Poppler::Document#n_pages.
|
253
|
+
|
254
|
+
* src/rbpoppler-document.c (doc_initialize): accepted not only URI
|
255
|
+
but also file name.
|
256
|
+
|
257
|
+
* src/lib/poppler.rb (Poppler::Document#ensure_uri): added.
|
258
|
+
|
259
|
+
2007-03-29 Kouhei Sutou <kou@cozmixng.org>
|
260
|
+
|
261
|
+
* src/rbpoppler-document.c: added a convenient alias:
|
262
|
+
Poppler::Document#pages.
|
263
|
+
|
264
|
+
* sample/pdf2text.rb: used default value.
|
265
|
+
|
266
|
+
* src/rbpoppler-page.c (page_get_text): used page size rectangle
|
267
|
+
as default value.
|
268
|
+
|
269
|
+
2006-09-06 Kouhei Sutou <kou@cozmixng.org>
|
270
|
+
|
271
|
+
* src/rbpoppler-action.c:
|
272
|
+
- made Poppler::Action read only.
|
273
|
+
- used macros for defining methods of Poppler::Dest.
|
274
|
+
|
275
|
+
* ./: don't require a patch of Bug 6912 for Poppler.
|
276
|
+
https://bugs.freedesktop.org/show_bug.cgi?id=6912
|
277
|
+
|
278
|
+
* extconf.rb: don't check whether PopplerActionAny is exist or
|
279
|
+
not.
|
280
|
+
|
281
|
+
* src/rbpoppler-action.c, src/rbpoppler.h: Poppler::Action is
|
282
|
+
always available.
|
283
|
+
* src/rbpoppler-page.c: Poppler::LinkMapping#action is always
|
284
|
+
available.
|
285
|
+
|
286
|
+
2006-07-10 Kouhei Sutou <kou@cozmixng.org>
|
287
|
+
|
288
|
+
* src/rbpoppler-page.c:
|
289
|
+
- can compile without rcairo.
|
290
|
+
- don't use PopplerAction when PopplerActionAny is exist.
|
291
|
+
|
292
|
+
2006-06-27 Kouhei Sutou <kou@cozmixng.org>
|
293
|
+
|
294
|
+
* README: required 0.5.2 or later poppler-glib.
|
295
|
+
* extconf.rb: ditto.
|
296
|
+
|
297
|
+
2006-06-17 Kouhei Sutou <kou@cozmixng.org>
|
298
|
+
|
299
|
+
* src/rbpoppler-document.c: use GLIST2ARYF.
|
300
|
+
* src/rbpoppler-page.c: use GLIST2ARY2F.
|
301
|
+
|
302
|
+
* src/: worked without any patches for poppler-glib.
|
303
|
+
|
304
|
+
* extconf.rb: check whether
|
305
|
+
poppler_page_render_selection_to_pixbuf() and
|
306
|
+
PopplerActionAny are available or not.
|
307
|
+
|
308
|
+
* src/rbpoppler-page.c: check whether
|
309
|
+
poppler_render_selection_to_pixbuf() is available or not.
|
310
|
+
|
311
|
+
* src/rbpoppler-document.c: disable Poppler::FontInfo and related
|
312
|
+
methods when POPPLER_TYPE_FONT_INFO is not
|
313
|
+
available. (POPPLER_TYPE_FONT_INFO is not available means
|
314
|
+
PopplerFontInfo is not GObjectize.)
|
315
|
+
|
316
|
+
* src/rbpoppler-action.c: disable Poppler::Action* and related
|
317
|
+
stuffs when PopplerActionAny is available. (PopplerActionAry is
|
318
|
+
available means PopplerAction* are not GObjectize.)
|
319
|
+
* src/rbpoppler-document.c: ditto.
|
320
|
+
* src/rbpoppler.h.c: ditto.
|
321
|
+
|
322
|
+
2006-05-30 Kouhei Sutou <kou@cozmixng.org>
|
323
|
+
|
324
|
+
* src/rbpoppler-document.c: fixed memory leaks.
|
325
|
+
* src/rbpoppler-page.c: ditto.
|
326
|
+
|
327
|
+
2006-05-27 Kouhei Sutou <kou@cozmixng.org>
|
328
|
+
|
329
|
+
* src/rbpoppler-page.c:
|
330
|
+
- made Poppler::Page#render generic method.
|
331
|
+
- removed Poppler::Page#render_to_pixbuf.
|
332
|
+
- removed Poppler::Page#render_to_ps.
|
333
|
+
- made Poppler::Page#render_selection generic method.
|
334
|
+
|
335
|
+
* src/lib/poppler.rb: added convenience method
|
336
|
+
Cairo::Context#render_poppler_page_selection.
|
337
|
+
|
338
|
+
* sample/pdf2.rb: use Poppler::Page#render instead of
|
339
|
+
Poppler::Page#render_to_pixbuf.
|
340
|
+
|
341
|
+
2006-05-26 Kouhei Sutou <kou@cozmixng.org>
|
342
|
+
|
343
|
+
* src/rbpoppler.h: added extern modifier.
|
344
|
+
|
345
|
+
2006-05-23 Kouhei Sutou <kou@cozmixng.org>
|
346
|
+
|
347
|
+
* src/rbpoppler-document.c: fixed some memory leaks.
|
348
|
+
|
349
|
+
2006-05-19 Kouhei Sutou <kou@cozmixng.org>
|
350
|
+
|
351
|
+
* sample/pdf2text.rb: added a sample which extract text from PDF.
|
352
|
+
|
353
|
+
* src/rbpoppler-document.c (index_iter_initialize): added NULL
|
354
|
+
check.
|
355
|
+
(Poppler::Layout): fixed type.
|
356
|
+
|
357
|
+
2006-05-18 Kouhei Sutou <kou@cozmixng.org>
|
358
|
+
|
359
|
+
* extconf.rb: make src/rbpopplerversion.h.
|
360
|
+
|
361
|
+
* src/rbpoppler.h: include src/rbpopplerversion.h.
|
362
|
+
|
363
|
+
* src/rbpoppler.c (Poppler::BUILD_VERSION): added.
|
364
|
+
|
365
|
+
* src/lib/poppler.rb (Poppler::VERSION): added.
|
366
|
+
|
367
|
+
2006-05-14 Kouhei Sutou <kou@cozmixng.org>
|
368
|
+
|
369
|
+
* .: imported.
|
data/README
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
Ruby/Poppler
|
2
|
+
============
|
3
|
+
|
4
|
+
Ruby/Poppler is a Ruby binding of poppler-glib.
|
5
|
+
|
6
|
+
Requirements
|
7
|
+
------------
|
8
|
+
|
9
|
+
Ruby: http://www.ruby-lang.org/
|
10
|
+
poppler-glib [*]: http://poppler.freedesktop.org/
|
11
|
+
Ruby/GLib2: http://ruby-gnome2.sourceforge.net/
|
12
|
+
Ruby/GTK2: http://ruby-gnome2.sourceforge.net/
|
13
|
+
Ruby/GdkPixbuf2: http://ruby-gnome2.sourceforge.net/
|
14
|
+
cairo/rcairo: http://cairographics.org/ (optional)
|
15
|
+
|
16
|
+
[*]: 0.8.0 or later is requried.
|
17
|
+
|
18
|
+
Install
|
19
|
+
-------
|
20
|
+
|
21
|
+
0. install ruby and poppler-glib.
|
22
|
+
1. ruby extconf.rb
|
23
|
+
2. make
|
24
|
+
3. su
|
25
|
+
4. make install
|
26
|
+
|
27
|
+
Copying
|
28
|
+
-------
|
29
|
+
Copyright (c) 2002-2006 Ruby-GNOME2 Project Team
|
30
|
+
|
31
|
+
This program is free software.
|
32
|
+
You can distribute/modify this program under the terms of
|
33
|
+
the GNU GENERAL PUBLIC LICENSE Version 2.
|
34
|
+
|
35
|
+
Project Website
|
36
|
+
---------------
|
37
|
+
http://ruby-gnome2.sourceforge.jp/
|
data/Rakefile
ADDED
@@ -0,0 +1,72 @@
|
|
1
|
+
require 'rake/clean'
|
2
|
+
CLEAN.include '**/*.o'
|
3
|
+
CLEAN.include "**/*.#{Config::MAKEFILE_CONFIG['DLEXT']}"
|
4
|
+
CLOBBER.include 'doc'
|
5
|
+
CLOBBER.include '**/*.log'
|
6
|
+
CLOBBER.include '**/Makefile'
|
7
|
+
CLOBBER.include '**/extconf.h'
|
8
|
+
|
9
|
+
# Determine the current version of the software
|
10
|
+
def ruby_poppler_version
|
11
|
+
require 'glib2'
|
12
|
+
GLib::BINDING_VERSION.join('.')
|
13
|
+
end
|
14
|
+
|
15
|
+
CURRENT_VERSION = ruby_poppler_version
|
16
|
+
|
17
|
+
desc "Default Task (Test project)"
|
18
|
+
task :default => :test
|
19
|
+
|
20
|
+
# Make tasks -----------------------------------------------------
|
21
|
+
make_program = (/mswin/ =~ RUBY_PLATFORM) ? 'nmake' : 'make'
|
22
|
+
MAKECMD = ENV['MAKE_CMD'] || make_program
|
23
|
+
MAKEOPTS = ENV['MAKE_OPTS'] || ''
|
24
|
+
|
25
|
+
POPPLER_SO = "src/poppler.#{Config::MAKEFILE_CONFIG['DLEXT']}"
|
26
|
+
|
27
|
+
file 'Makefile' => 'extconf.rb' do
|
28
|
+
sh "ruby extconf.rb #{ENV['EXTCONF_OPTS']}"
|
29
|
+
end
|
30
|
+
|
31
|
+
def make(target = '')
|
32
|
+
pid = system("#{MAKECMD} #{MAKEOPTS} #{target}")
|
33
|
+
$?.exitstatus
|
34
|
+
end
|
35
|
+
|
36
|
+
# Let make handle dependencies between c/o/so - we'll just run it.
|
37
|
+
file POPPLER_SO => (['Makefile'] + Dir['src/*.c'] + Dir['src/*.h']) do
|
38
|
+
m = make
|
39
|
+
fail "Make failed (status #{m})" unless m == 0
|
40
|
+
end
|
41
|
+
|
42
|
+
desc "Configure poppler"
|
43
|
+
task :configure => ['Makefile']
|
44
|
+
|
45
|
+
desc "Compile the shared object"
|
46
|
+
task :compile => [POPPLER_SO]
|
47
|
+
|
48
|
+
desc "Run poppler tests"
|
49
|
+
task :test => :compile do
|
50
|
+
sh "ruby test/run-test.rb"
|
51
|
+
end
|
52
|
+
|
53
|
+
desc 'Generate gem specification'
|
54
|
+
task :gemspec do
|
55
|
+
require 'erb'
|
56
|
+
tspec = ERB.new(File.read(File.join(File.dirname(__FILE__),'src','poppler.gemspec.erb')))
|
57
|
+
File.open(File.join(File.dirname(__FILE__),'poppler.gemspec'),'wb') do|f|
|
58
|
+
f << tspec.result
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
desc 'Build gem'
|
63
|
+
task :package => :gemspec do
|
64
|
+
require 'rubygems/specification'
|
65
|
+
spec_source = File.read File.join(File.dirname(__FILE__),'poppler.gemspec')
|
66
|
+
spec = nil
|
67
|
+
# see: http://gist.github.com/16215
|
68
|
+
Thread.new { spec = eval("$SAFE = 3\n#{spec_source}") }.join
|
69
|
+
spec.validate
|
70
|
+
Gem::Builder.new(spec).build
|
71
|
+
end
|
72
|
+
|