summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk@arm.linux.org.uk>2012-10-20 18:20:44 +0100
committerRussell King <rmk@arm.linux.org.uk>2012-10-23 11:16:11 +0100
commit5b3b1632a63515d6a966fc9344bf628e103dff47 (patch)
tree19c0e6f9ba9ffa917ed7f6d1f46e1b8b2546e228
parentb069a87d9bd8d2e4ebf52270c5d0519032fcc2fc (diff)
Convert to autotools
-rw-r--r--99-vmeta.rules1
-rw-r--r--Makefile41
-rw-r--r--Makefile.am21
-rwxr-xr-xautogen.sh5
-rw-r--r--configure.ac37
-rw-r--r--libvmeta.pc.in10
6 files changed, 74 insertions, 41 deletions
diff --git a/99-vmeta.rules b/99-vmeta.rules
new file mode 100644
index 0000000..cb2d5ae
--- /dev/null
+++ b/99-vmeta.rules
@@ -0,0 +1 @@
+KERNEL=="vmeta", MODE="0666"
diff --git a/Makefile b/Makefile
deleted file mode 100644
index 6fe7203..0000000
--- a/Makefile
+++ /dev/null
@@ -1,41 +0,0 @@
-#
-# Makefile for vMeta user library
-#
-
-ifeq "$(CONFIG_GEN_DEBUG)" "y"
-VMETA_DEF := -DVMETA_DEBUG
-
-else
-VMETA_DEF :=
-endif
-
-SRC_DIR := .
-
-CFLAGS += $(VMETA_DEF) -O2 -g -Wall -D_GNU_SOURCE
-
-
-vmeta_lib_src=${SRC_DIR}/vmeta_lib.c \
-
-vmeta_lib_obj=${vmeta_lib_src:.c=.o}
-
-.PHONY: all compile install-host install-target clean clean-local \
- uninstall-host uninstall-target
-
-.c.o:
- $(CC) $(CFLAGS) -fPIC -o $@ -c $<
-
-all: compile install-host install-target
-
-compile: libvmeta.so libvmeta.a
-
-libvmeta.a: ${vmeta_lib_obj}
- ${AR} -rcs $@ ${vmeta_lib_obj}
-
-libvmeta.so: ${vmeta_lib_obj}
- ${CC} -g -s -shared --no-undefined -Wl,-soname,$@ -o $@ ${vmeta_lib_obj} -lbmm
-
-clean: clean-local
-
-clean-local:
- -rm -f ${vmeta_lib_obj}
- -rm -f libvmeta.*
diff --git a/Makefile.am b/Makefile.am
new file mode 100644
index 0000000..f311f1c
--- /dev/null
+++ b/Makefile.am
@@ -0,0 +1,21 @@
+ACLOCAL_AMFLAGS = -I m4 ${ACLOCAL_FLAGS}
+AM_CFLAGS = $(WARN_CFLAGS)
+
+libvmeta_la_LTLIBRARIES = libvmeta.la
+libvmeta_ladir = $(libdir)
+libvmeta_la_LDFLAGS = -avoid-version -no-undefined -export-symbols-regex "vdec_os_.*"
+libvmeta_la_LIBADD = @LIBBMM_LIBS@
+
+libvmeta_la_SOURCES = \
+ vmeta_lib.c \
+ uio_vmeta.h
+
+libvmeta_laincludedir = $(includedir)
+libvmeta_lainclude_HEADERS = \
+ vmeta_lib.h
+
+pkgconfigdir = @pkgconfigdir@
+pkgconfig_DATA = libvmeta.pc
+
+dataudevdir = @udevrulesdir@
+dataudev_DATA = 99-vmeta.rules
diff --git a/autogen.sh b/autogen.sh
new file mode 100755
index 0000000..601ef8b
--- /dev/null
+++ b/autogen.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+aclocal
+libtoolize
+automake --add-missing
+autoconf
diff --git a/configure.ac b/configure.ac
new file mode 100644
index 0000000..8709cd9
--- /dev/null
+++ b/configure.ac
@@ -0,0 +1,37 @@
+AC_PREREQ([2.63])
+AC_INIT([libvmeta], [1.0.0], [], [libvmeta])
+AC_CONFIG_SRCDIR([Makefile.am])
+AC_CONFIG_MACRO_DIR([m4])
+AC_CONFIG_AUX_DIR([build-aux])
+AM_INIT_AUTOMAKE([1.10 foreign dist-bzip2])
+AM_MAINTAINER_MODE([enable])
+
+# Enable quiet compiles on automake 1.11.
+m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
+
+# Check for programs
+AC_PROG_CC
+
+AC_USE_SYSTEM_EXTENSIONS
+
+# Initialize libtool
+LT_PREREQ([2.2])
+LT_INIT
+
+LIBBMM_CFLAGS=
+LIBBMM_LIBS=-lbmm
+AC_SUBST(LIBBMM_CFLAGS)
+AC_SUBST(LIBBMM_LIBS)
+
+pkgconfigdir=${libdir}/pkgconfig
+AC_SUBST(pkgconfigdir)
+
+udevrulesdir=/lib/udev/rules.d
+AC_SUBST(udevrulesdir)
+
+AC_CONFIG_FILES([
+ Makefile
+ libvmeta.pc
+])
+AC_OUTPUT
+
diff --git a/libvmeta.pc.in b/libvmeta.pc.in
new file mode 100644
index 0000000..98bb49e
--- /dev/null
+++ b/libvmeta.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: libvmeta
+Description: Vmeta Linux Interface
+Version: @PACKAGE_VERSION@
+Requires: libbmm
+Libs: -L${libdir} -lvmeta