From: pixdamix Date: Mon, 28 Dec 2009 09:05:33 +0000 (+0000) Subject: Add a configure flag to specify the lockfile path X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=b10ba43e784742fe194351270c813a4a6d722e4e;p=project%2Fopkg-lede.git Add a configure flag to specify the lockfile path git-svn-id: http://opkg.googlecode.com/svn/trunk@511 e8e0d7a0-c8d9-11dd-a880-a1081c7ac358 --- diff --git a/configure.ac b/configure.ac index e7c7831..3a40004 100644 --- a/configure.ac +++ b/configure.ac @@ -243,6 +243,22 @@ if test x$opkgetcdir = x; then opkgetcdir=/etc fi +opkglockfile= +AC_ARG_WITH(opkglockfile, +[ --with-opkglockfile=FILE specifies the file used to make sure there is only + one instance of opkg runnning. + Defaults to ${opkglibdir}/opkg/lock, i.e. + /usr/lib/opkg/lock ], +[case "${withval}" in +yes) AC_MSG_ERROR(bad value ${withval} given for opkg lock file ) ;; +no) ;; +*) opkglockfile=$with_opkglockfile ;; +esac]) + +# Default if empty +if test x$opkglockfile = x; then + opkglockfile=${opkglibdir}/opkg/lock +fi dnl Some special cases for the wow64 build if test "x$want_gpgme" = "xyes" @@ -258,6 +274,7 @@ fi AC_SUBST(opkglibdir) AC_SUBST(opkgetcdir) +AC_SUBST(opkglockfile) # Setup output beautifier. SHAVE_INIT([shave], [enable]) diff --git a/libopkg/Makefile.am b/libopkg/Makefile.am index 524df5c..6be44ad 100644 --- a/libopkg/Makefile.am +++ b/libopkg/Makefile.am @@ -1,5 +1,5 @@ -AM_CFLAGS=-Wall -DHOST_CPU_STR=\"@host_cpu@\" -DBUILD_CPU=@build_cpu@ -DLIBDIR=\"@libdir@\" -DOPKGLIBDIR=\"@opkglibdir@\" -DOPKGETCDIR=\"@opkgetcdir@\" -DDATADIR=\"@datadir@\" -I$(top_srcdir) $(BIGENDIAN_CFLAGS) $(CURL_CFLAGS) $(GPGME_CFLAGS) $(PATHFINDER_CFLAGS) +AM_CFLAGS=-Wall -DHOST_CPU_STR=\"@host_cpu@\" -DBUILD_CPU=@build_cpu@ -DLIBDIR=\"@libdir@\" -DOPKGLIBDIR=\"@opkglibdir@\" -DOPKGETCDIR=\"@opkgetcdir@\" -DOPKGLOCKFILE=\"@opkglockfile@\" -DDATADIR=\"@datadir@\" -I$(top_srcdir) $(BIGENDIAN_CFLAGS) $(CURL_CFLAGS) $(GPGME_CFLAGS) $(PATHFINDER_CFLAGS) libopkg_includedir=$(includedir)/libopkg libopkg_include_HEADERS= *.h diff --git a/libopkg/opkg_conf.c b/libopkg/opkg_conf.c index 49944aa..9c02cbd 100644 --- a/libopkg/opkg_conf.c +++ b/libopkg/opkg_conf.c @@ -473,9 +473,9 @@ opkg_conf_init(void) globfree(&globbuf); if (conf->offline_root) - sprintf_alloc (&lock_file, "%s/%s/lock", conf->offline_root, OPKG_STATE_DIR_PREFIX); + sprintf_alloc (&lock_file, "%s/%s", conf->offline_root, OPKGLOCKFILE); else - sprintf_alloc (&lock_file, "%s/lock", OPKG_STATE_DIR_PREFIX); + sprintf_alloc (&lock_file, "%s", OPKGLOCKFILE); lock_fd = creat(lock_file, S_IRUSR | S_IWUSR | S_IRGRP); if (lock_fd == -1) {