41 lines
1.0 KiB
Makefile
41 lines
1.0 KiB
Makefile
# hhl.staticlib.mk - hhl - /usr/include/mk
|
|
# Copyright 2020 Nathan Fisher <nfisher.sr@gmail.com>
|
|
#
|
|
objdir ?= $(global_objdir)/lib$(libname)_shared
|
|
version = $(major).$(minor)
|
|
libbase = lib$(libname).so
|
|
libmajor = $(libbase).$(major)
|
|
libminor = $(libmajor).$(minor)
|
|
include hhl.lib.mk
|
|
cflags += -fpic
|
|
cflags += -fPIC
|
|
liblinks = $(libdir)/$(libmajor) $(libdir)/$(libbase)
|
|
|
|
install: $(libdir)/$(libminor) | $(liblinks)
|
|
@echo -e "$(grn)=== Finished Building $(libminor) ===$(reset)"
|
|
|
|
all: $(libminor)
|
|
|
|
$(libdir)/$(libminor): $(libminor) | $(libdir)
|
|
install -m755 $< $@
|
|
|
|
$(liblinks): $(libdir)/$(libminor)
|
|
ln -s $(libminor) $@
|
|
|
|
$(libminor): $(objs)
|
|
$(CC) -shared -Wl,-soname -Wl,$(libmajor) -o $@ $(objs)
|
|
rm -f $(libmajor)
|
|
|
|
$(objdir)/%.o: $(src)/%.c | $(objdir)
|
|
$(CC) $(cppflags) $(cflags) $(ldflags) -o $@ -c $<
|
|
|
|
$(objdir):
|
|
@echo -e "$(grn)=== Building for $(libname) ===$(reset)"
|
|
install -d $(objdir)
|
|
|
|
clean:
|
|
@echo -e "$(grn)=== Cleaning for $(libname) ===$(reset)"
|
|
rm -rf $(objdir) $(libminor) $(libmajor)
|
|
|
|
.PHONY: all clean
|