Add the following items to the glaze Makefile:
* Clean up libglaze.so in clean target
* Add dependency to rebuild libGL.so.1 if any of the .def files have
been changed.
* Add a distclean target.
* Add a check-syntax target to allow emacs flymake.
LIBGLAZE_32_SONAME = $(LIBGLAZE_32_LINKER_NAME).$(MAJOR)
LIBGLAZE_32_LIBNAME = $(LIBGLAZE_32_SONAME).$(MINOR).$(RELEASE)
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
ifeq ($(COMPILER_SUPPORTS_32),Yes)
TARGETS += $(LIBGLAZE_32_LIBNAME)
ifeq ($(COMPILER_SUPPORTS_32),Yes)
TARGETS += $(LIBGLAZE_32_LIBNAME)
$(LIBGLAZE_LINKER_NAME): $(LIBGLAZE_LIBNAME)
ln -sf $(LIBGLAZE_LIBNAME) $@
$(LIBGLAZE_LINKER_NAME): $(LIBGLAZE_LIBNAME)
ln -sf $(LIBGLAZE_LIBNAME) $@
-$(LIB64_DIR)/libGL.so.1: glaze-gl.c
+$(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 $@ $<
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 $@ $<
mkdir -p $(LIB32_DIR)
$(CC) $(GLAZE_CFLAGS) -DGLAZE_BITS=32 -m32 -fPIC -shared -Wl,-Bsymbolic -o $@ $<
+
+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)