screenshooter: Only link to $(CLIENT_LIBS) not libtoytoolkit.la

This application doesn't use toytoolkit, so don't link to it.  We have to
add a copy of xmalloc, to link without toytoolkit.
This commit is contained in:
Kristian Høgsberg 2013-08-12 21:45:19 -07:00
parent 4e5f1153ca
commit bdd8377312
2 changed files with 23 additions and 3 deletions

View File

@ -109,8 +109,10 @@ weston_flower_LDADD = libtoytoolkit.la
weston_screenshooter_SOURCES = \
screenshot.c \
screenshooter-protocol.c \
screenshooter-client-protocol.h
weston_screenshooter_LDADD = libtoytoolkit.la
screenshooter-client-protocol.h \
../shared/os-compatibility.c \
../shared/os-compatibility.h
weston_screenshooter_LDADD = $(CLIENT_LIBS)
weston_terminal_SOURCES = terminal.c
weston_terminal_LDADD = libtoytoolkit.la -lutil

View File

@ -20,7 +20,10 @@
* OF THIS SOFTWARE.
*/
#include "config.h"
#include <stdint.h>
#include <errno.h>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
@ -75,6 +78,21 @@ display_handle_geometry(void *data,
}
}
static void *
xmalloc(size_t size)
{
void *p;
p = malloc(size);
if (p == NULL) {
fprintf(stderr, "%s: out of memory\n",
program_invocation_short_name);
exit(EXIT_FAILURE);
}
return p;
}
static void
display_handle_mode(void *data,
struct wl_output *wl_output,
@ -185,7 +203,7 @@ write_png(int width, int height)
buffer_stride = width * 4;
data = malloc(buffer_stride * height);
data = xmalloc(buffer_stride * height);
if (!data)
return;