X-Git-Url: https://git.cworth.org/git?p=glaze;a=blobdiff_plain;f=Makefile;h=6bdd6d42c43141149fa718775fdf6e354819444b;hp=5ab342a8cebb55c0b1a70871ff14306b03859588;hb=HEAD;hpb=f5afe7a34b5f7adc8451f01db92be1de5f0830af diff --git a/Makefile b/Makefile index 5ab342a..6bdd6d4 100644 --- a/Makefile +++ b/Makefile @@ -28,33 +28,43 @@ LIBGLAZE_32_LINKER_NAME = libglaze-32.so LIBGLAZE_32_SONAME = $(LIBGLAZE_32_LINKER_NAME).$(MAJOR) LIBGLAZE_32_LIBNAME = $(LIBGLAZE_32_SONAME).$(MINOR).$(RELEASE) +TARGETS = glaze $(LIBGLAZE_LINKER_NAME) + +SPECS = specs/gl.def specs/glx.def specs/egl.def + ifeq ($(COMPILER_SUPPORTS_32),Yes) TARGETS += $(LIBGLAZE_32_LIBNAME) TARGETS += $(LIB32_DIR)/libGL.so.1 -TARGETS += glaze-find-libgl-32 +TARGETS += glaze-find-libgl-32 glaze-find-libegl-32 endif ifeq ($(COMPILER_SUPPORTS_64),Yes) TARGETS += $(LIBGLAZE_LIBNAME) TARGETS += $(LIB64_DIR)/libGL.so.1 -TARGETS += glaze-find-libgl-64 +TARGETS += glaze-find-libgl-64 glaze-find-libegl-64 endif all: $(TARGETS) GLAZE_CFLAGS = $(CFLAGS) $(WARN_CFLAGS) +glaze: glaze.c $(LIBGLAZE_LINKER_NAME) + $(CC) $(GLAZE_CFLAGS) -I. -L. -o $@ $< -ldl -lglaze + $(LIBGLAZE_32_LIBNAME): libglaze.c - $(CC) $(GLAZE_CFLAGS) -m32 -fPIC -shared -Wl,-Bsymbolic,-soname=$(LIBGLAZE_SONAME) -ldl -ltalloc -o $@ $< + $(CC) $(GLAZE_CFLAGS) -m32 -fPIC -shared -Wl,--version-script=libglaze.sym,-soname=$(LIBGLAZE_SONAME) -ldl -ltalloc -o $@ $< $(LIBGLAZE_LIBNAME): libglaze.c - $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -shared -Wl,-Bsymbolic,-soname=$(LIBGLAZE_SONAME) -ldl -ltalloc -o $@ $< + $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -shared -Wl,--version-script=libglaze.sym,-soname=$(LIBGLAZE_SONAME) -ldl -ltalloc -o $@ $< -$(LIB64_DIR)/libGL.so.1: glaze-gl.c +$(LIBGLAZE_LINKER_NAME): $(LIBGLAZE_LIBNAME) + ln -sf $(LIBGLAZE_LIBNAME) $@ + +$(LIB64_DIR)/libGL.so.1: glaze-gl.c $(SPECS) mkdir -p $(LIB64_DIR) $(CC) $(GLAZE_CFLAGS) -DGLAZE_BITS=64 -m64 -fPIC -shared -Wl,-Bsymbolic -o $@ $< -$(LIB32_DIR)/libGL.so.1: glaze-gl.c specs/gl.def +$(LIB32_DIR)/libGL.so.1: glaze-gl.c $(SPECS) mkdir -p $(LIB32_DIR) $(CC) $(GLAZE_CFLAGS) -DGLAZE_BITS=32 -m32 -fPIC -shared -Wl,-Bsymbolic -o $@ $< @@ -64,12 +74,19 @@ glaze-find-libgl-32: glaze-find-libgl.c glaze-find-libgl-64: glaze-find-libgl.c $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -ldl -o $@ $< +glaze-find-libegl-32: glaze-find-libegl.c + $(CC) $(GLAZE_CFLAGS) -m32 -fPIC -ldl -o $@ $< + +glaze-find-libegl-64: glaze-find-libegl.c + $(CC) $(GLAZE_CFLAGS) -m64 -fPIC -ldl -o $@ $< + .PHONY: install install: all mkdir -p $(DESTDIR)$(INCLUDEDIR)/glaze install -m0644 glaze.h $(DESTDIR)$(INCLUDEDIR)/glaze mkdir -p $(DESTDIR)$(BINDIR) mkdir -p $(DESTDIR)$(LIBDIR)/pkgconfig + install -m0755 glaze $(DESTDIR)$(BINDIR) ifeq ($(COMPILER_SUPPORTS_32),Yes) mkdir -p $(DESTDIR)$(LIBDIR)/glaze/$(LIB32_DIR) install -m0644 $(LIB32_DIR)/libGL.so.1 $(DESTDIR)$(LIBDIR)/glaze/$(LIB32_DIR) @@ -79,6 +96,7 @@ ifeq ($(COMPILER_SUPPORTS_32),Yes) ln -sf $(LIBGLAZE_32_LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBGLAZE_32_LINKER_NAME) install glaze-32.pc $(DESTDIR)$(LIBDIR)/pkgconfig install -m0755 glaze-find-libgl-32 $(DESTDIR)$(BINDIR) + install -m0755 glaze-find-libegl-32 $(DESTDIR)$(BINDIR) endif ifeq ($(COMPILER_SUPPORTS_64),Yes) mkdir -p $(DESTDIR)$(LIBDIR)/glaze/$(LIB64_DIR) @@ -89,7 +107,15 @@ ifeq ($(COMPILER_SUPPORTS_64),Yes) ln -sf $(LIBGLAZE_LIBNAME) $(DESTDIR)$(LIBDIR)/$(LIBGLAZE_LINKER_NAME) install glaze.pc $(DESTDIR)$(LIBDIR)/pkgconfig install -m0755 glaze-find-libgl-64 $(DESTDIR)$(BINDIR) + install -m0755 glaze-find-libegl-64 $(DESTDIR)$(BINDIR) endif clean: rm -f $(TARGETS) + +distclean: clean + rm Makefile.config glaze.pc glaze-32.pc config.h + +.PHONY: check-syntax +check-syntax: + $(CC) $(CFLAGS) -Wall -Wextra -fsyntax-only $(CHK_SOURCES)