summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* NMake Makefiles: Streamline build processcargo-c-msvcChun-wei Fan2021-07-095-15/+22
| | | | | | | | Use separate build directories for librsvg and rsvg_convert, so that building one of it does no require rebuilding the other. Also make the cross-build batch generation done on the fly, so that they will be removed once the Rust cross build work is completed (or failed--they can be generated quite quickly if needed).
* Revert "win32: Bring back the librsvg.symbols"Chun-wei Fan2021-07-092-59/+0
| | | | | | | Since symbol export is now handled by cargo-c, we can drop the librsvg.symbols file, again, since it is no longer used. This reverts commit 869fbf5949283f86762949c7cb989eee6470d6dd.
* NMake Makefiles: Update for cargo-c usageChun-wei Fan2021-07-099-61/+55
| | | | | | | | | | | | | This updates the Visual Studio build files to build librsvg after it has been updated to use cargo-c to build the C libraries, and, as a side-effect, static builds are now supported as well at the same time. As a convenience, we still provide rsvg-2.0-vsXX.dll resulting from the builds for people that aren't able to re-link their applications against rsvg-2.dll (the DLL file name that results from the cargo-c updates), but a warning message is shown upon 'install' that people are advised to re-compile their applications if possible, since rsvg-2.0.lib now links to rsvg-2.dll.
* config.h.win32.in: Drop i18n itemsChun-wei Fan2021-07-091-7/+0
| | | | We are not using these anymore, so clean up things a bit.
* Update COMPILING.md for cargo-cFederico Mena Quintero2021-07-091-2/+5
|
* Override the name of the .pc fileFederico Mena Quintero2021-07-091-0/+1
|
* Extremely basic script to test the cargo-c artifactsFederico Mena Quintero2021-07-091-0/+47
|
* Update to use cargo-c 0.9Luca Barbato2021-07-091-1/+5
|
* Make cargo-c emit Cflags in the .pc fileFederico Mena Quintero2021-07-091-1/+3
| | | | | We don't want it to generate headers, but we want it to generate the Cflags with the correct includedir.
* configure.ac: check for cargo-cbuildFederico Mena Quintero2021-07-091-0/+4
|
* Use rsvg-2 for the capi.library nameFederico Mena Quintero2021-07-091-1/+1
| | | | So that it matches the old name.
* Cargo.toml - add cargo-c metadataFederico Mena Quintero2021-07-091-1/+19
|
* Merge branch 'master.msvc' into 'master'Marge Bot2021-07-0814-129/+203
|\ | | | | | | | | Fix building latest GIT master on Windows See merge request GNOME/librsvg!565
| * win32: Update README.txtChun-wei Fan2021-07-081-18/+28
| | | | | | | | | | | | | | Update build instructions a bit, to better reflect on the current situation when building with Visual Studio. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/565>
| * NMake Makefiles: Fix and revampChun-wei Fan2021-07-089-102/+99
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Make the Visual Studio builds adapt to the more-thoroughly rustified librsvg, and clean up things a bit, by: * Updating the call to 'cargo' to better-match what is done in the autotools builds. Also fix building rsvg-convert.exe, as it is now handled by Cargo. * Fixing the librsvg DLL build, as we need to go back to using .def files as we now only have Rust sources for librsvg (core) itself. * Drop items that are no longer in the sources, to clean things up. * Speed up the build a bit. * Make more dependency-discovery configurable. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/565>
| * win32: Bring back the librsvg.symbolsChun-wei Fan2021-07-082-0/+59
| | | | | | | | | | | | | | | | | | | | | | Since we no longer compile any C files that trigger the compiler directives for exporting from the librsvg DLL, we must use a .def file to export these symbols, otherwise we will end up in an unusable librsvg DLL. This brings back the librsvg.symbols file which acts as the basis of our .def file, which will be consumed by the NMake Makefiles. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/565>
| * Cargo.toml: Make some more packages optional on WindowsChun-wei Fan2021-07-081-6/+12
| | | | | | | | | | | | | | | | The underlying issue is that these packages' build systems may not have pkg-config files generated for us for their Visual Studio build system, so we feed things into the linker instead. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/565>
| * rsvg-convert.rs: Fix building on WindowsChun-wei Fan2021-07-081-3/+5
|/ | | | | | | | | | | Make sure we import the things we really need, and like what is happening on *nix, the Win32 HANDLES that we get for stdin/stdout need to be marked as unsafe before we can cast the resulting items. Also make sure we deal with OutPutStream with the corresponding Win32OutputStream. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/565>
* Merge branch 'test-coverage' into 'master'Federico Mena Quintero2021-07-073-6/+70
|\ | | | | | | | | Improve test coverage for rsvg-convert See merge request GNOME/librsvg!562
| * rsvg-convert: Tests for invalid zoom factorsFederico Mena Quintero2021-07-071-0/+18
| |
| * Test when an image element has no href attributeFederico Mena Quintero2021-07-071-0/+14
| |
| * Iri does not need to implement DefaultFederico Mena Quintero2021-07-071-6/+0
| | | | | | | | All the properties with Iri data specify their own default in their newtype.
| * rsvg-convert: Test that invalid language tags yield an error for ↵Federico Mena Quintero2021-07-071-0/+10
| | | | | | | | --accept-language
| * rsvg-convert: Test that the export-id option indeed accepts ids with a # prefixFederico Mena Quintero2021-07-071-0/+10
| |
| * rsvg-convert: Test error message for invalid lengthsFederico Mena Quintero2021-07-071-0/+9
| |
| * rsvg-convert: test that unsupported units yield the correct error messageFederico Mena Quintero2021-07-071-0/+9
|/
* Merge branch 'madds-image-auto-length' into 'master'Federico Mena Quintero2021-07-073-4/+52
|\ | | | | | | | | (#747) Add "auto" for image element width/height See merge request GNOME/librsvg!561
| * (#747) Add "auto" for image element width/heightMadds H2021-07-063-4/+52
|/ | | | | | Includes test Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/747
* Merge branch 'madds-text-paint-order' into 'master'Marge Bot2021-07-024-34/+78
|\ | | | | | | | | (#727) Implement paint-order on text See merge request GNOME/librsvg!560
| * Add test for paint-order for text elementsFederico Mena Quintero2021-07-022-0/+12
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/560>
| * draw_text_span: do the transforms the same way for each of the ↵Federico Mena Quintero2021-07-022-23/+36
| | | | | | | | | | | | clipping/fill/stroke cases Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/560>
| * Rename testFederico Mena Quintero2021-07-021-3/+3
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/560>
| * (#727) Implement paint-order for textMadds H2021-07-021-29/+48
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/560>
* Merge branch 'with-saved-cr' into 'master'Marge Bot2021-07-012-256/+254
|\ | | | | | | | | | | | | (#759) - Replace SavedCr again - use a with_saved_cr() function Closes #759 See merge request GNOME/librsvg!559
| * (#759) - Replace SavedCr again - use a with_saved_cr() functionFederico Mena Quintero2021-06-292-256/+254
|/ | | | | | | | | | | Sigh, it was so nice to cr.restore() on Drop of the SavedCr, but since restore() can now return an error, this is no longer practicable. So, we go back to the scheme of using a helper function - just so we can use the ? operator easily in the callbacks. Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/759 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/559>
* Merge branch 'context-fill-stroke-tests' into 'master'Marge Bot2021-06-295-26/+63
|\ | | | | | | | | (#760) Resolve both context_fill and context_stroke See merge request GNOME/librsvg!558
| * (#760) Resolve both context_fill and context_strokeMadds H2021-06-285-26/+63
|/ | | | | | | Also implement test for swapped context_fill and stroke ie fill="context_stroke" Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/558>
* Merge branch 'madds-docker-tests' into 'master'Marge Bot2021-06-2810-0/+334
|\ | | | | | | | | Add Docker test helper scripts See merge request GNOME/librsvg!557
| * Add tools dir with Docker test scriptsMadds H2021-06-2810-0/+334
|/ | | | | | | This allows someone to use docker to run the librsvg check suite with choice of 3 OS images, opensuse, fedora, or debian Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/557>
* Merge branch 'context-fill-stroke' into 'master'Marge Bot2021-06-288-25/+165
|\ | | | | | | | | (#618) Implement context-fill and context-stroke See merge request GNOME/librsvg!556
| * Add test for context-stroke in markersFederico Mena Quintero2021-06-281-1/+33
| | | | | | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/556>
| * (#618) Implement context-fill and context-strokeMadds H2021-06-257-24/+132
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/556>
* Merge branch 'release-instructions' into 'master'Marge Bot2021-06-251-3/+35
|\ | | | | | | | | RELEASING.md - Instructions for making gitlab releases See merge request GNOME/librsvg!555
| * RELEASING.md - Instructions for making gitlab releasesFederico Mena Quintero2021-06-251-3/+35
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/555>
* Merge branch 'explicit-zero-type' into 'master'Marge Bot2021-06-251-1/+3
|\ | | | | | | | | | | | | (#757): Hack (?) to fix type inference on 32-bit builds Closes #757 See merge request GNOME/librsvg!554
| * (#757): Hack (?) to fix type inference on 32-bit buildsFederico Mena Quintero2021-06-241-1/+3
|/ | | | | | | | | | | | | | | | | | | | Sometimes when the build fails for whatever other reason, we get this: error[E0283]: type annotations needed --> src/rect.rs:126:26 | 126 | self.width() == Zero::zero() || self.height() == Zero::zero() | ^^ cannot infer type | = note: cannot satisfy `i32: PartialEq<_>` as if type inference didn't work there. Now it seems to be recurrent on 32-bit builds. No idea why. Hopefully fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/757 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/554>
* Merge branch 'non-image-surface-without-filters' into 'master'Marge Bot2021-06-242-88/+129
|\ | | | | | | | | | | | | (#758): Panic when rendering with masks or opacity to a non-image surface Closes #758 See merge request GNOME/librsvg!553
| * (#758): Panic when rendering with masks or opacity to a non-image surfaceFederico Mena Quintero2021-06-242-91/+103
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Change the non-image-surface test to exercise a untested code paths. This exposes this bug: thread 'bugs::can_draw_to_non_image_surface' panicked at 'called `Result::unwrap()` on an `Err` value: Surface(0x7f1728022bd0)', src/drawing_ctx.rs:741:88 in the unwrap() here: let surface_to_filter = SharedImageSurface::copy_from_surface( &cairo::ImageSurface::try_from(temporary_draw_ctx.cr.target()).unwrap(), )?; This happens in the case where there are no filters, but there is opacity, and the code incorrectly assumes that it has an image surface to work with. Fixes https://gitlab.gnome.org/GNOME/librsvg/-/issues/758 Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/553>
| * New test for drawing to a non-image surface in the Rust testsFederico Mena Quintero2021-06-241-0/+29
| | | | | | | | | | | | | | | | | | | | This is slightly different from the one in tests/api.c - that one tests that the cr's transform is preserved. We'll leave that one as it is, and use the Rust one to test for the tricky code paths in drawing_ctx.rs. Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/553>
| * Fix a mut self that was explicitly typedFederico Mena Quintero2021-06-241-1/+1
|/ | | | Part-of: <https://gitlab.gnome.org/GNOME/librsvg/-/merge_requests/553>