Added HAVE_GIFLIB macro for optional dependency on giflib

master
Bert 2011-08-17 18:17:40 +02:00
parent 79bd86defb
commit a4b90aee20
3 changed files with 13 additions and 3 deletions

View File

@ -5,7 +5,7 @@ VERSION = git-20110819
CC = gcc
DESTDIR =
PREFIX = /usr/local
CFLAGS = -Wall -pedantic -O2 -DVERSION=\"$(VERSION)\"
CFLAGS = -Wall -pedantic -O2 -DVERSION=\"$(VERSION)\" -DHAVE_GIFLIB
LDFLAGS =
LIBS = -lX11 -lImlib2 -lgif

View File

@ -1,4 +1,4 @@
.include "Makefile"
CFLAGS = -Wall -pedantic -DVERSION=\"$(VERSION)\" -I/usr/X11R7/include -I/usr/pkg/include
CFLAGS = -Wall -pedantic -O2 -DVERSION=\"$(VERSION)\" -DHAVE_GIFLIB -I/usr/X11R7/include -I/usr/pkg/include
LDFLAGS = -L/usr/X11R7/lib -Wl,-R/usr/X11R7/lib -L/usr/pkg/lib -Wl,-R/usr/pkg/lib

12
image.c
View File

@ -18,11 +18,14 @@
#define _IMAGE_CONFIG
#include <unistd.h>
#ifdef HAVE_GIFLIB
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/types.h>
#include <gif_lib.h>
#endif
#include "image.h"
#include "options.h"
@ -55,6 +58,7 @@ void img_init(img_t *img, win_t *win) {
}
}
#ifdef HAVE_GIFLIB
int img_load_gif(img_t *img, const fileinfo_t *file) {
GifFileType *gif;
GifRowType *rows = NULL;
@ -208,6 +212,7 @@ int img_load_gif(img_t *img, const fileinfo_t *file) {
return !err;
}
#endif /* HAVE_GIFLIB */
int img_load(img_t *img, const fileinfo_t *file) {
const char *fmt;
@ -225,8 +230,13 @@ int img_load(img_t *img, const fileinfo_t *file) {
imlib_context_set_anti_alias(img->aa);
fmt = imlib_image_format();
#ifdef HAVE_GIFLIB
if (!strcmp(fmt, "gif"))
img_load_gif(img, file);
#else
/* avoid unused-but-set-variable warning */
(void) fmt;
#endif
img->scalemode = options->scalemode;
img->re = 0;