X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=Makefile;h=422d37fbdbddcf07ba68ad3d5935ee3a6d89873a;hb=fded9f20d5f5c92bd5af051117327816dda0238e;hp=069192afe1f76bb048cdb858b8c23c0becfa69d6;hpb=cec0694a7f219bd3590e6a04beba34ca45539540;p=glaze diff --git a/Makefile b/Makefile index 069192a..422d37f 100644 --- a/Makefile +++ b/Makefile @@ -24,27 +24,45 @@ LIBGLAZE_LINKER_NAME = libglaze.so LIBGLAZE_SONAME = $(LIBGLAZE_LINKER_NAME).$(MAJOR) LIBGLAZE_LIBNAME = $(LIBGLAZE_SONAME).$(MINOR).$(RELEASE) -TARGETS = $(LIBGLAZE_LIBNAME) lib64/libGL.so.1 lib32/libGL.so.1 +TARGETS = $(LIBGLAZE_LIBNAME) + +ifeq ($(COMPILER_SUPPORTS_32),Yes) +TARGETS += $(LIB32_DIR)/libGL.so.1 +TARGETS += glaze-find-libgl-32 +endif + +ifeq ($(COMPILER_SUPPORTS_64),Yes) +TARGETS += $(LIB64_DIR)/libGL.so.1 +TARGETS += glaze-find-libgl-64 +endif all: $(TARGETS) +GLAZE_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) + $(LIBGLAZE_LIBNAME): glaze.c - $(CC) $(CFLAGS) -fPIC -shared -Wl,-Bsymbolic,-soname=$(LIBGLAZE_SONAME) -o $@ $< + $(CC) $(GLAZE_CFLAGS) -fPIC -shared -Wl,-Bsymbolic,-soname=$(LIBGLAZE_SONAME) -ldl -ltalloc -o $@ $< -lib64/libGL.so.1: glaze-gl.c glapi.def - mkdir -p lib64 - $(CC) $(CFLAGS) -m64 -fPIC -shared -Wl,-Bsymbolic -o $@ $< +$(LIB64_DIR)/libGL.so.1: glaze-gl.c glapi.def + mkdir -p $(LIB64_DIR) + $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -shared -Wl,-Bsymbolic -lelf -o $@ $< -lib32/libGL.so.1: glaze-gl.c specs/gl.def - mkdir -p lib32 - $(CC) $(CFLAGS) -m32 -fPIC -shared -Wl,-Bsymbolic -o $@ $< +$(LIB32_DIR)/libGL.so.1: glaze-gl.c specs/gl.def + mkdir -p $(LIB32_DIR) + $(CC) $(GLAZE_CFLAGS) -m32 -fPIC -shared -Wl,-Bsymbolic -lelf -o $@ $< + +glaze-find-libgl-32: glaze-find-libgl.c + $(CC) $(GLAZE_CFLAGS) -m32 -fPIC -ldl -o $@ $< + +glaze-find-libgl-64: glaze-find-libgl.c + $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -ldl -o $@ $< .PHONY: install install: all - mkdir -p $(DESTDIR)$(LIBDIR)/glaze/lib64 - install -m0644 lib64/libGL.so.1 $(DESTDIR)$(LIBDIR)/glaze/lib64 - mkdir -p $(DESTDIR)$(LIBDIR)/glaze/lib32 - install -m0644 lib32/libGL.so.1 $(DESTDIR)$(LIBDIR)/glaze/lib32 + mkdir -p $(DESTDIR)$(LIBDIR)/glaze/$(LIB64_DIR) + install -m0644 $(LIB64_DIR)/libGL.so.1 $(DESTDIR)$(LIBDIR)/glaze/$(LIB64_DIR) + mkdir -p $(DESTDIR)$(LIBDIR)/glaze/$(LIB32_DIR) + install -m0644 $(LIB32_DIR)/libGL.so.1 $(DESTDIR)$(LIBDIR)/glaze/$(LIB32_DIR) install -m0644 $(LIBGLAZE_LIBNAME) $(DESTDIR)$(LIBDIR) ln -sf $(LIBGLAZE_LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBGLAZE_SONAME) ln -sf $(LIBGLAZE_LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBGLAZE_LINKER_NAME) @@ -52,6 +70,13 @@ install: all install glaze.pc $(DESTDIR)$(LIBDIR)/pkgconfig mkdir -p $(DESTDIR)$(INCLUDEDIR)/glaze install -m0644 glaze.h $(DESTDIR)$(INCLUDEDIR)/glaze + mkdir -p $(DESTDIR)$(BINDIR) +ifeq ($(COMPILER_SUPPORTS_32),Yes) + install -m0755 glaze-find-libgl-32 $(DESTDIR)$(BINDIR) +endif +ifeq ($(COMPILER_SUPPORTS_64),Yes) + install -m0755 glaze-find-libgl-64 $(DESTDIR)$(BINDIR) +endif clean: rm -f $(TARGETS)