1 2DESTDIR = 3LIBDIR = lib 4 5CC ?= gcc 6CFLAGS = -I${PWD}/include -Wall -std=c99 -I$(LOCALBASE)/include -L$(LOCALBASE)/lib 7 8OBJS = src/core/conf.o src/core/glue.o src/core/log.o 9LIBS = libX11.so libGL.so 10 11###-include config.make 12 13.PHONY: all clean install 14all: $(LIBS) yukon-core-lib sysconf 15 16%.o: %.c 17 $(CC) $(CFLAGS) -fPIC -c -o $@ $< 18 19$(LIBS): 20 $(CC) -shared -o $@.native -Wl,-soname,$@.native 21 $(CC) $(CFLAGS) -fPIC -shared -o $@ src/libs/$(@:%.so=%.c) $@.native 22 rm -f $@.native 23 24yukon-core-lib: $(OBJS) 25 $(CC) -shared -o $@ $(OBJS) -lseom -L${LOCALBASE}/lib 26 27sysconf: 28 echo 'LDPATH="$(PREFIX)/$(LIBDIR)/yukon"' > $@ 29 30soname = `objdump -x $(PREFIX)/$(LIBDIR)/$(1) | grep SONAME | awk '{ print $$2 }'` 31install: $(LIBS) yukon-core-lib 32 install -m 755 -d $(DESTDIR)$(PREFIX)/bin $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon 33 install -m 755 src/scripts/yukon $(DESTDIR)$(PREFIX)/bin 34 install -m 755 yukon-core-lib $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon 35 ln -sf $(LOCALBASE)/lib/libX11.so.$(LIBX11_MAJOR) \ 36 $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon/libX11.so.native 37 ln -sf $(LOCALBASE)/lib/libGL.so.$(LIBGL_MAJOR) \ 38 $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon/libGL.so.native 39 install -m 755 libX11.so \ 40 $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon/libX11.so.$(LIBX11_MAJOR) 41 install -m 755 libGL.so \ 42 $(DESTDIR)$(PREFIX)/$(LIBDIR)/yukon/libGL.so.$(LIBGL_MAJOR) 43 44clean: 45 rm -f $(OBJS) $(LIBS) yukon-core-lib sysconf 46 47mrproper: clean 48 rm -f config.make 49