tRemove libtool depencency, reorganise Makefile - surf - customized build of surf, the suckless webkit browser
 (HTM) git clone git://src.adamsgaard.dk/surf
 (DIR) Log
 (DIR) Files
 (DIR) Refs
 (DIR) README
 (DIR) LICENSE
       ---
 (DIR) commit 3321c42d36ce79ebecd8b2ea7e93ca2e5c2ff98d
 (DIR) parent e7c629b258653a5237ca72cf2087a391e55829f1
 (HTM) Author: Quentin Rameau <quinq@fifth.space>
       Date:   Mon,  8 Oct 2018 13:47:25 +0200
       
       Remove libtool depencency, reorganise Makefile
       
       We don't need libtool anymore, just build the library directly.
       This lets us simplify the Makefile too.
       
       Diffstat:
         M Makefile                            |      65 +++++++++++++------------------
         M config.mk                           |      21 +++++++--------------
       
       2 files changed, 34 insertions(+), 52 deletions(-)
       ---
 (DIR) diff --git a/Makefile b/Makefile
       t@@ -6,44 +6,38 @@ include config.mk
        
        SRC = surf.c common.c
        OBJ = $(SRC:.c=.o)
       -LIBSRC = libsurf-webext.c common.c
       -LIBOBJ = $(LIBSRC:.c=.lo)
       +WEBEXTSRC = libsurf-webext.c
       +WEBEXTOBJ = $(WEBEXTSRC:.c=.o)
        
       -all: options libsurf-webext.la surf
       +all: options libsurf-webext.so surf
        
        options:
                @echo surf build options:
       -        @echo "CFLAGS     = $(SURFCFLAGS)"
       -        @echo "LDFLAGS    = $(SURFLDFLAGS)"
       -        @echo "CC         = $(CC)"
       -        @echo "LIBCFLAGS  = $(LIBCFLAGS)"
       -        @echo "LIBLDFLAGS = $(LIBLDFLAGS)"
       -        @echo "LIBTOOL    = $(LIBTOOL)"
       +        @echo "CC            = $(CC)"
       +        @echo "CFLAGS        = $(SURFCFLAGS) $(CFLAGS)"
       +        @echo "WEBEXTCFLAGS  = $(WEBEXTCFLAGS) $(CFLAGS)"
       +        @echo "LDFLAGS       = $(LDFLAGS)"
        
        .c.o:
       -        $(CC) $(SURFCFLAGS) -c $<
       +        $(CC) $(SURFCFLAGS) $(CFLAGS) -c $<
        
       -.c.lo:
       -        $(LIBTOOL) --mode compile --tag CC $(CC) $(LIBCFLAGS) -c $<
       +config.h:
       +        cp config.def.h $@
        
        $(OBJ): config.h config.mk
       -$(LIBOBJ): config.h config.mk
        
       -config.h:
       -        cp config.def.h $@
       +$(WEBEXTOBJ): config.h config.mk
       +        $(CC) $(WEBEXTCFLAGS) $(CFLAGS) -c $(WEBEXTSRC)
        
       -libsurf-webext.la: $(LIBOBJ)
       -        $(LIBTOOL) --mode link --tag CC $(CC) $(LIBLDFLAGS) -o $@ \
       -            $(LIBOBJ) $(LIB) -rpath $(DESTDIR)$(LIBPREFIX)
       +libsurf-webext.so: $(WEBEXTOBJ)
       +        $(CC) -shared -Wl,-soname,$@ $(LDFLAGS) -o $@ $< $(WEBEXTLIBS) -lc
        
        surf: $(OBJ)
       -        $(CC) $(SURFCFLAGS) -o $@ $(OBJ) $(SURFLDFLAGS)
       +        $(CC) $(SURFLDLAGS) $(LDFLAGS) -o $@ $(OBJ) $(LIBS)
        
       -clean-lib:
       -        rm -rf libsurf-webext.la .libs $(LIBOBJ) $(LIBOBJ:.lo=.o)
       -
       -clean: clean-lib
       +clean:
                rm -f surf $(OBJ)
       +        rm -f libsurf-webext.so $(WEBEXTOBJ)
        
        distclean: clean
                rm -f config.h surf-$(VERSION).tar.gz
       t@@ -52,32 +46,27 @@ dist: distclean
                mkdir -p surf-$(VERSION)
                cp -R LICENSE Makefile config.mk config.def.h README \
                    surf-open.sh arg.h TODO.md surf.png \
       -            surf.1 $(SRC) $(LIBSRC) surf-$(VERSION)
       +            surf.1 $(SRC) $(WEBEXTSRC) surf-$(VERSION)
                tar -cf surf-$(VERSION).tar surf-$(VERSION)
                gzip surf-$(VERSION).tar
                rm -rf surf-$(VERSION)
        
       -install-lib: libsurf-webext.la
       -        mkdir -p $(DESTDIR)$(LIBPREFIX)
       -        $(LIBTOOL) --mode install install -c libsurf-webext.la \
       -            $(DESTDIR)$(LIBPREFIX)/libsurf-webext.la
       -
       -install: all install-lib
       +install: all
                mkdir -p $(DESTDIR)$(PREFIX)/bin
                cp -f surf $(DESTDIR)$(PREFIX)/bin
                chmod 755 $(DESTDIR)$(PREFIX)/bin/surf
       +        mkdir -p $(DESTDIR)$(WEBEXTDIR)
       +        cp -f libsurf-webext.so $(DESTDIR)$(WEBEXTDIR)
       +        chmod 644 $(DESTDIR)$(PREFIX)/bin/surf
                mkdir -p $(DESTDIR)$(MANPREFIX)/man1
                sed "s/VERSION/$(VERSION)/g" < surf.1 > $(DESTDIR)$(MANPREFIX)/man1/surf.1
                chmod 644 $(DESTDIR)$(MANPREFIX)/man1/surf.1
        
       -uninstall-lib:
       -        $(LIBTOOL) --mode uninstall rm -f \
       -            $(DESTDIR)$(LIBPREFIX)/libsurf-webext.la
       -        - rm -df $(DESTDIR)$(LIBPREFIX)
       -
       -uninstall: uninstall-lib
       +uninstall:
                rm -f $(DESTDIR)$(PREFIX)/bin/surf
                rm -f $(DESTDIR)$(MANPREFIX)/man1/surf.1
       +        rm -f $(DESTDIR)$(WEBEXTDIR)/libsurf-webext.so
       +        - rmdir $(DESTDIR)$(WEBEXTDIR)
        
       -.SUFFIXES: .la .lo .o .c
       -.PHONY: all options clean-dist clean dist install-lib install uninstall-lib uninstall
       +.SUFFIXES: .so .o .c
       +.PHONY: all options clean-dist clean dist install uninstall
 (DIR) diff --git a/config.mk b/config.mk
       t@@ -6,7 +6,8 @@ VERSION = 2.0
        # paths
        PREFIX = /usr/local
        MANPREFIX = $(PREFIX)/share/man
       -LIBPREFIX = $(PREFIX)/lib/surf
       +LIBPREFIX = $(PREFIX)/lib
       +LIBDIR = $(LIBPREFIX)/surf
        
        X11INC = /usr/X11R6/include
        X11LIB = /usr/X11R6/lib
       t@@ -14,25 +15,17 @@ X11LIB = /usr/X11R6/lib
        GTKINC = `pkg-config --cflags gtk+-3.0 gcr-3 webkit2gtk-4.0`
        GTKLIB = `pkg-config --libs gtk+-3.0 gcr-3 webkit2gtk-4.0`
        WEBEXTINC = `pkg-config --cflags webkit2gtk-4.0 webkit2gtk-web-extension-4.0`
       -WEBEXTLIB = `pkg-config --libs webkit2gtk-4.0 webkit2gtk-web-extension-4.0`
       +WEBEXTLIBS = `pkg-config --libs webkit2gtk-4.0 webkit2gtk-web-extension-4.0`
        
        # includes and libs
        INCS = -I$(X11INC) $(GTKINC)
        LIBS = -L$(X11LIB) -lX11 $(GTKLIB) -lgthread-2.0
        
        # flags
       -CPPFLAGS = -DVERSION=\"$(VERSION)\" -DWEBEXTDIR=\"$(LIBPREFIX)\" \
       +CPPFLAGS = -DVERSION=\"$(VERSION)\" -DWEBEXTDIR=\"$(LIBDIR)\" \
                   -D_DEFAULT_SOURCE -DGCR_API_SUBJECT_TO_CHANGE
       -SURFCFLAGS = $(INCS) $(CPPFLAGS) $(CFLAGS)
       -SURFLDFLAGS = $(LIBS) $(LDFLAGS)
       -LIBCPPFLAGS = -DWEBEXTDIR=\"$(LIBPREFIX)\"
       -LIBCFLAGS = $(WEBEXTINC) $(LIBCPPFLAGS) $(CFLAGS)
       -LIBLDFLAGS = $(WEBEXTLIB) $(LDFLAGS)
       +SURFCFLAGS = $(INCS) $(CPPFLAGS)
       +WEBEXTCFLAGS = -fPIC $(WEBEXTINC)
        
       -# Solaris
       -#CFLAGS = -fast $(INCS) -DVERSION=\"$(VERSION)\"
       -#LDFLAGS = $(LIBS)
       -
       -# compiler and linker
       +# compiler
        #CC = c99
       -LIBTOOL = libtool --quiet