# # Standard GNU Make non-recursive prologue. Pushes callers $(d) onto a stack, # for re-entrant Rules.gnu processing. # sp := $(sp).x dirstack_$(sp) := $(d) d := $(dir) # Our parent directory $(d)/.. := $(subst /$(notdir $(d)-XXXX),,$(d)-XXXX) # # Make sure we have our defaults. # include $($(d)/..)/mk/Variables.gnu OBJS_$(d) := $(d)/bufio.o $(d)/bufio/membuf.o $(d)/bufio/pagebuf.o $(d)/bufio/socket.o $(d)/socket.o $(d)/thread.o $(d)/lookup.o $(d)/tls.o $(d)/bufio/pipe.o $(d)/bufio/drain.o SRCS_$(d) := $(d)/bufio.c $(d)/bufio/membuf.c $(d)/bufio/pagebuf.c $(d)/bufio/socket.c $(d)/socket.c $(d)/thread.c $(d)/lookup.c $(d)/tls.c $(d)/bufio/pipe.c $(d)/bufio/drain.c INCS_$(d) := $(d)/bufio.h $(d)/bufio/membuf.h $(d)/bufio/pagebuf.h $(d)/bufio/socket.h $(d)/socket.h $(d)/thread.h $(d)/lookup.h $(d)/tls.h $(d)/bufio/pipe.h $(d)/bufio/drain.h CFLAGS_LIBEVNET_SRC := $(CFLAGS) CPPFLAGS_LIBEVNET_SRC := -DLIBEVNET_SOURCE -DLIBNOSTD_STATIC -I$($(d)/..)/libnostd -I$($(d)/..)/libnostd/compat -I$(d) $(CPPFLAGS) # # Compilation Targets # #$(d)/bufio/%.o: $(d)/bufio/%.c $(INCS_$(d)) # $(CC) -c $(CPPFLAGS_LIBEVNET_SRC) $(CFLAGS_LIBEVNET_SRC) -o $@ $< $(d)/%.o: $(d)/%.c $(INCS_$(d)) $(CC) -c $(CPPFLAGS_LIBEVNET_SRC) $(CFLAGS_LIBEVNET_SRC) -o $@ $< $(d)/libevnet.a: $(OBJS_$(d)) $(AR) $(ARFLAGS) $@ $(OBJS_$(@D)) $(RANLIB) $(RANLIBFLAGS) $@ all: $(d)/libevnet.a # # Install targets # $(DESTDIR)$(libdir)/libevnet.a: $(d)/libevnet.a | $(DESTDIR)$(libdir) $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet: | $(DESTDIR)$(includedir) $(MKDIR) $@ $(DESTDIR)$(includedir)/evnet/bufio: | $(DESTDIR)$(includedir)/evnet $(MKDIR) $@ $(DESTDIR)$(includedir)/evnet/socket.h: $(d)/socket.h | $(DESTDIR)$(includedir)/evnet $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/thread.h: $(d)/thread.h | $(DESTDIR)$(includedir)/evnet $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/lookup.h: $(d)/lookup.h | $(DESTDIR)$(includedir)/evnet $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/tls.h: $(d)/tls.h | $(DESTDIR)$(includedir)/evnet $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio.h: $(d)/bufio.h | $(DESTDIR)$(includedir)/evnet $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio/drain.h: $(d)/bufio/drain.h | $(DESTDIR)$(includedir)/evnet/bufio $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio/membuf.h: $(d)/bufio/membuf.h | $(DESTDIR)$(includedir)/evnet/bufio $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio/pagebuf.h: $(d)/bufio/pagebuf.h | $(DESTDIR)$(includedir)/evnet/bufio $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio/pipe.h: $(d)/bufio/pipe.h | $(DESTDIR)$(includedir)/evnet/bufio $(INSTALL_DATA) $< $@ $(DESTDIR)$(includedir)/evnet/bufio/socket.h: $(d)/bufio/socket.h | $(DESTDIR)$(includedir)/evnet/bufio $(INSTALL_DATA) $< $@ .INTERMEDIATE: -levnet -levnet: $(DESTDIR)$(libdir)/libevnet.a \ $(DESTDIR)$(includedir)/evnet/socket.h $(DESTDIR)$(includedir)/evnet/thread.h \ $(DESTDIR)$(includedir)/evnet/lookup.h $(DESTDIR)$(includedir)/evnet/bufio.h \ $(DESTDIR)$(includedir)/evnet/tls.h \ $(DESTDIR)$(includedir)/evnet/bufio/drain.h \ $(DESTDIR)$(includedir)/evnet/bufio/membuf.h \ $(DESTDIR)$(includedir)/evnet/bufio/pagebuf.h \ $(DESTDIR)$(includedir)/evnet/bufio/pipe.h \ $(DESTDIR)$(includedir)/evnet/bufio/socket.h install: -levnet # # Uninstall targets # .PHONY: $(d)/uninstall $(d)/uninstall: rm -fr $(DESTDIR)$(includedir)/evnet rm -f $(DESTDIR)$(libdir)/libevnet.a uninstall: $(d)/uninstall # # Clean targets # .PHONY: $(d)/clean $(d)/clean: rm -f $(@D)/*.o $(@D)/*.a $(@D)/bufio/*.o clean: $(d)/clean # # Standard GNU Make non-recursive epilogue. Restores callers $(d), for # re-entrant Rules.gnu processing. # d := $(dirstack_$(sp)) sp := $(basename $(sp))