Commit graph

68 commits

Author SHA1 Message Date
Nathan Fiedler b63f25c550 Enforce MagickWand version in build.rs
It is very easy to overlook the version of MagickWand mentioned in the
README, so make sure the build system enforces it.

Fixes #19

cargo test passes
2016-10-16 11:00:06 -07:00
Nathan Fiedler cb40925af0 Merge pull request #18 from brunoqc/patch-1
syntax highlighting in README.md
2016-10-05 09:39:53 -07:00
Bruno Bigras 1d31b971c6 syntax highlighting in README.md 2016-10-04 17:01:27 -04:00
Nathan Fiedler 50d10a3285 Add notes for 0.6.0 release 2016-09-20 20:11:49 -07:00
Nathan Fiedler dd4becddd7 Hack to get build working on FreeBSD again
Due to a bug in rust-bindgen, use the bindings as generated on the Mac
for the same version of MagickWand as found on FreeBSD. That is, when
build.rs is invoked on a FreeBSD system, it will use the Mac-generated
bindings.rs rather than pulling down rust-bindgen and invoking it to
generate the bindings on the fly. See issue #385 in the rust-bindgen
project for details.

cargo test passes
2016-09-20 20:03:28 -07:00
Nathan Fiedler 2a76a0f164 Merge pull request #17 from gadomski/remove-usr-local-lib-link-path
Remove /usr/local/lib from rustc link search on OSX
2016-08-25 08:52:32 -07:00
Pete Gadomski 7563231707 Remove /usr/local/lib from rustc link search
If /usr/local/lib is in the search path, a Homebrew installed libJPEG
can end up conflicting with the system libJPEG as such:

```
$ otool -L /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
/System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO:
... snip ...
    /System/Library/Frameworks/ImageIO.framework/Versions/A/Resources/libJPEG.dylib (compatibility version 1.0.0, current version 1.0.0)
... snip ...
```

```
$ cargo clean && cargo test
... snip ...
Doc-tests magick_rust
dyld: Symbol not found: __cg_jpeg_resync_to_restart
  Referenced from: /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
  Expected in: /usr/local/lib/libJPEG.dylib
 in /System/Library/Frameworks/ImageIO.framework/Versions/A/ImageIO
```

Removing the /usr/local/lib link search path allows successful
compilation and testing on my OSX 10.11.6, with jpeg 8d installed into
/usr/local/lib via Homebrew. I realize this might be a problem with my
setup and not a universal issue, but as Homebrew is so common I thought
I'd submit this patch anyways.
2016-08-25 07:54:49 -06:00
Nathan Fiedler 094e24d859 Clarify versions of dependencies 2016-08-18 15:53:14 -07:00
Nathan Fiedler 39a58432b7 Include note about LIBCLANG_PATH envar for Linux 2016-08-18 15:47:35 -07:00
Nathan Fiedler b0d439892b Correct the copyright year 2016-08-18 15:47:14 -07:00
Nathan Fiedler 8b8f2b4444 Update Fabric script for provisioning Ubuntu VM 2016-08-18 14:59:04 -07:00
Nathan Fiedler 5b4ba71530 Make note that Clang is required to build 2016-08-18 14:58:45 -07:00
Nathan Fiedler eec7998d25 Use new rust-bindgen crate for faster builds
Rather than cloning the bindgen repository and building from source, use
the packaged crate. The result is the rebuilds are much, much faster.
Also, had to make numerous changes for the new version of bindgen.

cargo test passes
2016-08-14 21:23:05 -07:00
Nathan Fiedler 2c94dab05a Add license header to contributed files 2016-08-14 18:46:03 -07:00
Nathan Fiedler f41202af44 No longer need to ignore bindings.rs 2016-08-12 20:32:07 -07:00
Nathan Fiedler a3a02fc6d9 Add changes from recent merge requests 2016-08-03 20:39:26 -07:00
Nathan Fiedler 7a5bd98746 Merge pull request #13 from gadomski/set-option
Add `set_option` method.
2016-08-03 20:34:21 -07:00
Nathan Fiedler 76e4abb862 Merge pull request #12 from gadomski/write-images-blob
Add `write_images_blob`
2016-08-03 20:31:15 -07:00
Pete Gadomski eeb014af1f Add set_option method.
This is useful for stuff like setting the loop option for a gif.
2016-08-02 12:01:34 -06:00
Pete Gadomski b46f8a47ac Add write_images_blob
This method goes down to `MagickGetImagesBlob`, which allows for
creating animated gifs.

I didn't abstract out common operations between the two in the interest
of not overly polluting the codebase. However, this new method is almost
identical to `write_image_blob` so you could probably abstract something
out of there.
2016-08-02 11:35:16 -06:00
Nathan Fiedler 1dcd0f6933 Fix crate version number
cargo test passes
2016-07-17 18:09:09 -07:00
Nathan Fiedler 95c6d58789 Correct the crate version number 2016-07-17 17:48:55 -07:00
Nathan Fiedler 96071ca377 Use Result.expect() in the suitable cases 2016-07-14 19:12:27 -07:00
Nathan Fiedler dff74fac98 Use 6.9 version of ImageMagick for Ubuntu VM 2016-07-14 17:48:54 -07:00
Nathan Fiedler f60f612baf Update changelog to reflect API change 2016-06-25 15:42:39 -07:00
Nathan Fiedler 731025764d Fix the tests after the API change 2016-06-25 15:39:36 -07:00
Nathan Fiedler 391c84a014 Merge pull request #10 from hjr3/read_image_blob-as_ref
Change MagickWand::read_image_blob to use ref
2016-06-25 15:29:07 -07:00
Herman J. Radtke III 1b2d7010af
Change MagickWand::read_image_blob to use ref
Breaking change.

The `read_image_blob` function does not need to take ownership of the
image byte array.
2016-06-25 09:47:09 -07:00
Nathan Fiedler 40ebf0fbf7 Merge pull request #7 from hjr3/patch-1
Update required version to 6.9
2016-06-18 15:25:41 -07:00
Herman J. Radtke III eedab4a6a7 Update required version to 6.9
This library makes use of `MagickAutoOrientImage`, which is not present in all versions of ImageMagick 6.
2016-06-17 19:00:31 -07:00
Nathan Fiedler f9521106b5 Update the changelog for latest changes 2016-05-18 06:50:27 -07:00
Nathan Fiedler b20c99ecb8 Merge pull request #5 from marjakm/master
add drawing and pixel wands; add some methods to MagickWand
2016-05-18 06:43:53 -07:00
Mattis Marjak df6f812cf9 fix ldflags in build.rs 2016-05-17 22:18:17 +03:00
Mattis Marjak 9d2eba64a3 use size_t and ssize_t types for cross-compilation 2016-05-16 19:03:45 +03:00
Mattis Marjak c08a093dc3 cross-compile support for build.rs 2016-05-16 18:57:06 +03:00
Mattis Marjak 9e2285a4aa add drawing and pixel wands; add some methods to MagickWand 2016-05-11 22:12:42 +03:00
Mattis Marjak 4c7cebe628 move MagickWand to wand/magick.rs and filters to filters.rs 2016-05-11 17:03:53 +03:00
Mattis Marjak 85a4b97b70 place generated files in OUT_DIR 2016-05-11 16:52:15 +03:00
Nathan Fiedler a5cb97d3cf Correct the rotated image to match expectations
The test image that was meant to be rotated was generated incorrectly.
It now corresponds to the following ImageMagick command:

$ convert in -rotate 90 -orient left-bottom out

cargo test passes
2016-03-29 20:56:58 -07:00
Nathan Fiedler faebc468ba Detect and correct non-optimal image orientation
cargo test passes
2016-03-29 18:28:33 -07:00
Nathan Fiedler 3732fd5747 Report missing MagickWand-config in build.rs
Since build.rs requires MagickWand-config, make an effort to determine
if the executable is available or not, and panic with a clear course of
action. Otherwise the error is rather cryptic.

Fixes #3

cargo test passes
2016-03-23 18:00:52 -07:00
Nathan Fiedler 856a9e7c78 Handle building on macos a little better
First, only add the special environment variable when building on Mac OS
X. Second, look for the path to ensure the Xcode command line tools are
installed, and panic if that is not the case.

cargo test passes
2016-03-22 20:56:09 -07:00
Nathan Fiedler 4741780a7a Add a pointer to the setup documentation 2016-03-22 20:56:02 -07:00
Nathan Fiedler 9732f87847 Indicate that the Vagrant guest is FreeBSD 2016-03-22 20:55:49 -07:00
Nathan Fiedler 1dc7dc46a5 Specify libc 0.2 or higher as a dependency
cargo test passes
2016-03-17 15:38:22 -07:00
Nathan Fiedler ec1875fedb Minor tweaks to the Vagrant files 2016-02-13 15:18:13 -08:00
Nathan Fiedler dd78d6bfac Vagrant/Fabric setup for testing Ubuntu, FreeBSD 2016-02-13 13:09:06 -08:00
Nathan Fiedler 0c3c8888a7 Update the cargo manifest for latest release 2016-02-10 20:42:26 -08:00
Nathan Fiedler dda30c2769 Update changelog to reflect latest tag 2016-02-10 20:39:52 -08:00
Nathan Fiedler ebf4559ede Instructions for building on various platforms
Include Vagrant files for FreeBSD 10.2 and Ubuntu Linux 14.04 LTS.
2016-02-10 18:11:32 -08:00