Skip to content

Commit

Permalink
Generate and install a pkg-config file. (#142)
Browse files Browse the repository at this point in the history
* Generate and install a pkg-config file.

* Use Makefile libdir and includedir for pkg-config.

This splits the prefix out from these variables, so that
the same variables can be used to construct the pkg-config
file.

* Update the manifest for installation of pkg-config file.

* Revert "Use Makefile libdir and includedir for pkg-config."

This reverts commit a4cd6dc.

* Use Makefile libdir and includedir for pkg-config.

This splits the prefix out from these variables, so that
the same variables can be used to construct the pkg-config
file.
  • Loading branch information
tlsa authored and stevengj committed Nov 1, 2018
1 parent f174976 commit 5dcd382
Show file tree
Hide file tree
Showing 3 changed files with 28 additions and 1 deletion.
2 changes: 2 additions & 0 deletions MANIFEST
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,5 @@ lib/libutf8proc.a
lib/libutf8proc.so -> libutf8proc.so.2.2.0
lib/libutf8proc.so.2 -> libutf8proc.so.2.2.0
lib/libutf8proc.so.2.2.0
lib/pkgconfig/
lib/pkgconfig/libutf8proc.pc
17 changes: 16 additions & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@ endif
prefix=/usr/local
libdir=$(prefix)/lib
includedir=$(prefix)/include
pkgconfigdir=$(libdir)/pkgconfig

pkglibdir=$(libdir:$(prefix)/%=%)
pkgincludedir=$(includedir:$(prefix)/%=%)

# meta targets

Expand All @@ -45,6 +49,7 @@ all: libutf8proc.a libutf8proc.$(SHLIB_EXT)

clean:
rm -f utf8proc.o libutf8proc.a libutf8proc.$(SHLIB_VERS_EXT) libutf8proc.$(SHLIB_EXT)
rm -f libutf8proc.pc
ifneq ($(OS),Darwin)
rm -f libutf8proc.so.$(MAJOR)
endif
Expand Down Expand Up @@ -86,12 +91,22 @@ libutf8proc.$(MAJOR).dylib: utf8proc.o
libutf8proc.dylib: libutf8proc.$(MAJOR).dylib
ln -f -s libutf8proc.$(MAJOR).dylib $@

install: libutf8proc.a libutf8proc.$(SHLIB_EXT) libutf8proc.$(SHLIB_VERS_EXT)
libutf8proc.pc: libutf8proc.pc.in
sed \
-e 's#PREFIX#$(prefix)#' \
-e 's#LIBDIR#$(pkglibdir)#' \
-e 's#INCLUDEDIR#$(pkgincludedir)#' \
-e 's#VERSION#$(MAJOR).$(MINOR).$(PATCH)#' \
libutf8proc.pc.in > libutf8proc.pc

install: libutf8proc.a libutf8proc.$(SHLIB_EXT) libutf8proc.$(SHLIB_VERS_EXT) libutf8proc.pc
mkdir -m 755 -p $(DESTDIR)$(includedir)
$(INSTALL) -m 644 utf8proc.h $(DESTDIR)$(includedir)
mkdir -m 755 -p $(DESTDIR)$(libdir)
$(INSTALL) -m 644 libutf8proc.a $(DESTDIR)$(libdir)
$(INSTALL) -m 755 libutf8proc.$(SHLIB_VERS_EXT) $(DESTDIR)$(libdir)
mkdir -m 755 -p $(DESTDIR)$(pkgconfigdir)
$(INSTALL) -m 644 libutf8proc.pc $(DESTDIR)$(pkgconfigdir)/libutf8proc.pc
ln -f -s libutf8proc.$(SHLIB_VERS_EXT) $(DESTDIR)$(libdir)/libutf8proc.$(SHLIB_EXT)
ifneq ($(OS),Darwin)
ln -f -s libutf8proc.$(SHLIB_VERS_EXT) $(DESTDIR)$(libdir)/libutf8proc.so.$(MAJOR)
Expand Down
10 changes: 10 additions & 0 deletions libutf8proc.pc.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
prefix=PREFIX
exec_prefix=${prefix}
libdir=${prefix}/LIBDIR
includedir=${prefix}/INCLUDEDIR

Name: libutf8proc
Description: UTF8 processing
Version: VERSION
Libs: -L${libdir} -lutf8proc
Cflags: -I${includedir} -DUTF8PROC_EXPORTS

0 comments on commit 5dcd382

Please sign in to comment.