Introduction
Introduction Statistics Contact Development Disclaimer Help
Remove libtool depencency, reorganise Makefile - surf - surf browser, a WebKit …
git clone git://git.suckless.org/surf
Log
Files
Refs
README
LICENSE
---
commit 3321c42d36ce79ebecd8b2ea7e93ca2e5c2ff98d
parent e7c629b258653a5237ca72cf2087a391e55829f1
Author: Quentin Rameau <[email protected]>
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(-)
---
diff --git a/Makefile b/Makefile
@@ -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
@@ -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/su…
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 un…
+.SUFFIXES: .so .o .c
+.PHONY: all options clean-dist clean dist install uninstall
diff --git a/config.mk b/config.mk
@@ -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
@@ -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
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.