--- /dev/null
+AUTOMAKE_OPTIONS = foreign
+SUBDIRS = dist doc include samples scripts src tests
+
+EXTRA_DIST = README_daemon libcgroup.doxyfile
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#
AC_PREREQ(2.61)
+
+# In following section update all occurences of version, including soname
AC_INIT([control groups library and utilities], 0.34,
[http://sourceforge.net/tracker/?group_id=218421&atid=1043649])
-AC_CONFIG_SRCDIR([wrapper.c])
+AM_INIT_AUTOMAKE(libcgroup, 0.34)
+# set library version (X:Y:Z gets transfromed to libcgroup.so.X.Y.Z,
+# soname is libcgroup.so.X
+AC_SUBST(LIBRARY_VERSION, 1:0:34)
+
+
+AC_CONFIG_SRCDIR([src])
AC_CONFIG_HEADER([config.h])
# Process command line options
YACC="$SHELL $missing_dir/missing byacc"
AC_SUBST(YACC, "byacc")
fi
-AC_PROG_LEX
+AM_PROG_LEX
+AC_PROG_LIBTOOL
# Checks for libraries.
-# FIXME: Replace `main' with a function in `-lcgroup':
AC_CHECK_LIB([cgroup], [cgroup_create_cgroup])
# Checks for header files.
AC_FUNC_STAT
AC_CHECK_FUNCS([getmntent hasmntopt memset mkdir rmdir strdup])
-AC_CONFIG_FILES([Makefile])
-AC_CONFIG_FILES([libcgroup.spec:libcgroup.spec.in])
-AC_CONFIG_FILES([mktarball:mktarball.in])
+AC_CONFIG_FILES([Makefile
+ tests/Makefile
+ src/Makefile
+ src/daemon/Makefile
+ src/tools/Makefile
+ src/pam/Makefile
+ scripts/Makefile
+ samples/Makefile
+ include/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ dist/Makefile])
+AC_CONFIG_FILES([dist/libcgroup.spec:dist/libcgroup.spec.in])
CFLAGS="$CFLAGS -Wall"
AC_OUTPUT
+
--- /dev/null
+EXTRA_DIST = libcgroup.spec
--- /dev/null
+SUBDIRS = man
+
--- /dev/null
+man_MANS = cgclassify.1 cgconfig.conf.5 cgconfigparser.8 cgexec.1 cgred.conf.5 \
+ cgrules.conf.5 cgrulesengd.8
+
+EXTRA_DIST = $(man_MANS)
+
--- /dev/null
+include_HEADERS = libcgroup.h
+
--- /dev/null
+EXTRA_DIST = cgconfig.conf cgred.conf cgrules.conf
--- /dev/null
+EXTRA_DIST = init.d/cgconfig init.d/cgred
--- /dev/null
+SUBDIRS = . daemon pam tools
+
+# generate parse.h from parse.y
+AM_YFLAGS = -d
+
+INCLUDES = -I$(top_srcdir)/include
+lib_LTLIBRARIES = libcgroup.la
+libcgroup_la_SOURCES = parse.y lex.l api.c config.c libcgroup-internal.h libcgroup.map wrapper.c
+libcgroup_la_LIBADD = -lpthread
+libcgroup_la_LDFLAGS = -Wl,--version-script,libcgroup.map -version-number $(LIBRARY_VERSION)
+
--- /dev/null
+INCLUDES = -I $(top_srcdir)/include
+sbin_PROGRAMS = cgrulesengd
+
+cgrulesengd_SOURCES = cgrulesengd.c cgrulesengd.h
+cgrulesengd_LDADD = $(top_srcdir)/src/.libs/libcgroup.la
+cgrulesengd_LDFLAGS = -L$(top_srcdir)/src/.libs
--- /dev/null
+INCLUDES = -I $(top_srcdir)/include
+lib_LTLIBRARIES = pam_cgroup.la
+
+pam_cgroup_la_SOURCES = pam_cgroup.c
+pam_cgroup_la_LDFLAGS = -module
+pam_cgroup_la_LIBADD = $(top_srcdir)/src/.libs/libcgroup.la -lpam
--- /dev/null
+INCLUDES = -I$(top_srcdir)/src -I$(top_srcdir)/include
+LDADD = $(top_srcdir)/src/.libs/libcgroup.la
+
+bin_PROGRAMS = cgexec cgclassify cgconfigparser
+
+cgexec_SOURCES = cgexec.c tools-common.c tools-common.h
+
+cgclassify_SOURCES = cgclassify.c tools-common.c tools-common.h
+
+cgconfigparser_SOURCES = cgconfig.c
+
--- /dev/null
+INCLUDES = -I$(top_srcdir)/include
+LDADD = $(top_srcdir)/src/.libs/libcgroup.la
+
+# compile the tests, but do not install them
+noinst_PROGRAMS = libcgrouptest01 libcg_ba setuid pathtest walk_test
+
+libcgrouptest01_SOURCES=libcgrouptest01.c test_functions.c libcgrouptest.h
+libcg_ba_SOURCES=libcg_ba.cpp
+setuid_SOURCES=setuid.c
+pathtest_SOURCES=pathtest.c
+walk_test_SOURCES=walk_test.c
+
+EXTRA_DIST = pathtest.sh runlibcgrouptest.sh
+
+TESTS = runlibcgrouptest.sh