summaryrefslogtreecommitdiff
path: root/libacl
diff options
context:
space:
mode:
authorMike Frysinger <vapier@gentoo.org>2014-01-10 10:07:41 -0500
committerAndreas Gruenbacher <agruen@linbit.com>2014-01-13 13:18:39 +0100
commitc8f23c92177c5a82ab3699b1b0d4acbee9afb770 (patch)
tree72b6c7cf7a006babd2177055d8c61d1f6bd15375 /libacl
parent2d13383b7fbcc04fc16681caa4f43d9d9083cca1 (diff)
downloadacl-c8f23c92177c5a82ab3699b1b0d4acbee9afb770.tar.gz
modernize build system
This deletes the hand rolled build system and replaces it entirely with autotools. The overall diffstat shows that this is a clear win, and it makes the package build/install like every other autotool package out there which makes the lives of distro maintainers a lot easier. This should also be faster by virtue of using a non-recursive build. Things to note: - to generate autotools: ./autogen.sh - to see full compile output: make V=1 - to build specific targets: make attr getfattr ... - to run tests: make check - to create a release: make distcheck -j Other non-developer things: - man pages are no longer compressed as this is uncommon in the autotools world and distros don't need it anyways (they already handle it automatically for most pakages) - the minor # of the shared library is now based on the package version so it'll be much bigger ... this isn't a problem, and is actually a bugfix (older releases didn't change when they should have) (Again, this is all using the standard autotool targets.)
Diffstat (limited to 'libacl')
-rw-r--r--libacl/Makefile68
-rw-r--r--libacl/Makemodule.am81
2 files changed, 81 insertions, 68 deletions
diff --git a/libacl/Makefile b/libacl/Makefile
deleted file mode 100644
index 6befcd4..0000000
--- a/libacl/Makefile
+++ /dev/null
@@ -1,68 +0,0 @@
-#
-# Copyright (c) 2000-2002 Silicon Graphics, Inc. All Rights Reserved.
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2 of the License, or
-# (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-
-TOPDIR = ..
-
-LTLDFLAGS += -Wl,--version-script,$(TOPDIR)/exports
-include $(TOPDIR)/include/builddefs
-
-LTLIBRARY = libacl.la
-LTLIBS = -lattr $(LIBMISC)
-LTDEPENDENCIES = $(LIBMISC)
-LT_CURRENT = 2
-LT_REVISION = 0
-LT_AGE = 1
-
-CFILES = $(POSIX_CFILES) $(LIBACL_CFILES) $(INTERNAL_CFILES) \
- perm_copy_fd.c perm_copy_file.c
-HFILES = libobj.h libacl.h byteorder.h __acl_from_xattr.h __acl_to_xattr.h \
- perm_copy.h __acl_extended_file.h
-
-LCFLAGS = -include perm_copy.h
-
-POSIX_CFILES = \
- acl_add_perm.c acl_calc_mask.c acl_clear_perms.c acl_copy_entry.c \
- acl_copy_ext.c acl_copy_int.c acl_create_entry.c acl_delete_def_file.c \
- acl_delete_entry.c acl_delete_perm.c acl_dup.c acl_free.c \
- acl_from_text.c acl_get_entry.c acl_get_fd.c acl_get_file.c \
- acl_get_perm.c acl_get_permset.c acl_get_qualifier.c \
- acl_get_tag_type.c acl_init.c acl_set_fd.c acl_set_file.c \
- acl_set_permset.c acl_set_qualifier.c acl_set_tag_type.c acl_to_text.c \
- acl_valid.c acl_size.c
-
-LIBACL_CFILES = \
- acl_to_any_text.c acl_entries.c acl_check.c acl_error.c acl_cmp.c \
- acl_extended_fd.c acl_extended_file.c acl_equiv_mode.c acl_from_mode.c \
- acl_extended_file_nofollow.c __acl_extended_file.c
-
-INTERNAL_CFILES = \
- __acl_to_any_text.c __acl_to_xattr.c __acl_from_xattr.c \
- __acl_reorder_obj_p.c __libobj.c __apply_mask_to_mode.c
-
-
-default: $(LTLIBRARY)
-
-include $(BUILDRULES)
-
-install:
-
-install-dev: default
- $(INSTALL_LTLIB_DEV)
-
-install-lib: default
- $(INSTALL_LTLIB)
diff --git a/libacl/Makemodule.am b/libacl/Makemodule.am
new file mode 100644
index 0000000..c35214c
--- /dev/null
+++ b/libacl/Makemodule.am
@@ -0,0 +1,81 @@
+lib_LTLIBRARIES += libacl.la
+
+# No other library exports version info, otherwise we'd have to add
+# "libacl_" prefix to all these variables.
+LT_CURRENT = 2
+# The configure script will set this for us automatically.
+#LT_REVISION =
+LT_AGE = 1
+LTVERSION = $(LT_CURRENT):$(LT_REVISION):$(LT_AGE)
+
+CFILES = $(POSIX_CFILES) $(LIBACL_CFILES) $(INTERNAL_CFILES) \
+ libacl/perm_copy_fd.c \
+ libacl/perm_copy_file.c
+HFILES = \
+ libacl/libobj.h \
+ libacl/libacl.h \
+ libacl/byteorder.h \
+ libacl/__acl_from_xattr.h \
+ libacl/__acl_to_xattr.h \
+ libacl/perm_copy.h \
+ libacl/__acl_extended_file.h
+
+POSIX_CFILES = \
+ libacl/acl_add_perm.c \
+ libacl/acl_calc_mask.c \
+ libacl/acl_clear_perms.c \
+ libacl/acl_copy_entry.c \
+ libacl/acl_copy_ext.c \
+ libacl/acl_copy_int.c \
+ libacl/acl_create_entry.c \
+ libacl/acl_delete_def_file.c \
+ libacl/acl_delete_entry.c \
+ libacl/acl_delete_perm.c \
+ libacl/acl_dup.c \
+ libacl/acl_free.c \
+ libacl/acl_from_text.c \
+ libacl/acl_get_entry.c \
+ libacl/acl_get_fd.c \
+ libacl/acl_get_file.c \
+ libacl/acl_get_perm.c \
+ libacl/acl_get_permset.c \
+ libacl/acl_get_qualifier.c \
+ libacl/acl_get_tag_type.c \
+ libacl/acl_init.c \
+ libacl/acl_set_fd.c \
+ libacl/acl_set_file.c \
+ libacl/acl_set_permset.c \
+ libacl/acl_set_qualifier.c \
+ libacl/acl_set_tag_type.c \
+ libacl/acl_size.c \
+ libacl/acl_to_text.c \
+ libacl/acl_valid.c
+
+LIBACL_CFILES = \
+ libacl/acl_check.c \
+ libacl/acl_cmp.c \
+ libacl/acl_entries.c \
+ libacl/acl_equiv_mode.c \
+ libacl/acl_error.c \
+ libacl/acl_extended_fd.c \
+ libacl/acl_extended_file.c \
+ libacl/acl_extended_file_nofollow.c \
+ libacl/acl_from_mode.c \
+ libacl/acl_to_any_text.c \
+ libacl/__acl_extended_file.c
+
+INTERNAL_CFILES = \
+ libacl/__acl_from_xattr.c \
+ libacl/__acl_reorder_obj_p.c \
+ libacl/__acl_to_any_text.c \
+ libacl/__acl_to_xattr.c \
+ libacl/__apply_mask_to_mode.c \
+ libacl/__libobj.c
+
+libacl_la_DEPENDENCIES = exports libmisc.la
+libacl_la_SOURCES = $(CFILES) $(HFILES)
+libacl_la_LIBADD = -lattr libmisc.la
+libacl_la_CFLAGS = $(AM_CFLAGS) -include $(srcdir)/libacl/perm_copy.h
+libacl_la_LDFLAGS = \
+ -Wl,--version-script,$(top_srcdir)/exports \
+ -version-info $(LTVERSION)