summaryrefslogtreecommitdiffstats
path: root/lib/libalpm
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2012-04-09 04:55:30 +0200
committerDan McGee <dan@archlinux.org>2012-04-09 04:55:30 +0200
commitd158dde30c378acc8e88d5208aa837f92331af9e (patch)
treeb99456c7b765becdb5bab3869af5a2e512026562 /lib/libalpm
parent31091963edaa505d00642aecb9950ce087a40b73 (diff)
parentb729ed01093312cef7ce48d07b13e225b25446db (diff)
downloadpacman-d158dde30c378acc8e88d5208aa837f92331af9e.tar.gz
pacman-d158dde30c378acc8e88d5208aa837f92331af9e.tar.xz
Merge remote-tracking branch 'dave/buildsys'
Oh god, what are we thinking thinking merging this. Hopefully this works with only a few follow-up patches necessary.
Diffstat (limited to 'lib/libalpm')
-rw-r--r--lib/libalpm/Makefile.am19
-rw-r--r--lib/libalpm/deps.c10
-rw-r--r--lib/libalpm/trans.c7
-rw-r--r--lib/libalpm/util.c17
-rw-r--r--lib/libalpm/util.h2
5 files changed, 38 insertions, 17 deletions
diff --git a/lib/libalpm/Makefile.am b/lib/libalpm/Makefile.am
index 61dcb877..0781d5d8 100644
--- a/lib/libalpm/Makefile.am
+++ b/lib/libalpm/Makefile.am
@@ -10,7 +10,7 @@ DEFS = -DLOCALEDIR=\"@localedir@\" @DEFS@
AM_CPPFLAGS = \
-imacros $(top_builddir)/config.h
-AM_CFLAGS = -pedantic -D_GNU_SOURCE
+AM_CFLAGS = -pedantic -D_GNU_SOURCE $(WARNING_CFLAGS)
if ENABLE_VISIBILITY_CC
if DARWIN
@@ -63,7 +63,20 @@ libalpm_la_SOURCES += \
base64.h base64.c
endif
-libalpm_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION_INFO) @LIBCURL@
-libalpm_la_LIBADD = $(LTLIBINTL)
+libalpm_la_LDFLAGS = -no-undefined -version-info $(LIB_VERSION_INFO)
+
+libalpm_la_CFLAGS = \
+ $(AM_CFLAGS) \
+ $(GPGME_CFLAGS) \
+ $(LIBARCHIVE_CFLAGS) \
+ $(LIBCURL_CFLAGS) \
+ $(LIBSSL_CFLAGS)
+
+libalpm_la_LIBADD = \
+ $(LTLIBINTL) \
+ $(GPGME_LIBS) \
+ $(LIBARCHIVE_LIBS) \
+ $(LIBCURL_LIBS) \
+ $(LIBSSL_LIBS)
# vim:set ts=2 sw=2 noet:
diff --git a/lib/libalpm/deps.c b/lib/libalpm/deps.c
index 6069f5e6..98519bd0 100644
--- a/lib/libalpm/deps.c
+++ b/lib/libalpm/deps.c
@@ -158,15 +158,17 @@ alpm_list_t *_alpm_sortbydeps(alpm_handle_t *handle,
else if(nextchild->state == -1) {
alpm_pkg_t *vertexpkg = vertex->data;
alpm_pkg_t *childpkg = nextchild->data;
- const char *message;
_alpm_log(handle, ALPM_LOG_WARNING, _("dependency cycle detected:\n"));
if(reverse) {
- message =_("%s will be removed after its %s dependency\n");
+ _alpm_log(handle, ALPM_LOG_WARNING,
+ _("%s will be removed after its %s dependency\n"),
+ vertexpkg->name, childpkg->name);
} else {
- message =_("%s will be installed before its %s dependency\n");
+ _alpm_log(handle, ALPM_LOG_WARNING,
+ _("%s will be installed before its %s dependency\n"),
+ vertexpkg->name, childpkg->name);
}
- _alpm_log(handle, ALPM_LOG_WARNING, message, vertexpkg->name, childpkg->name);
}
}
if(!found) {
diff --git a/lib/libalpm/trans.c b/lib/libalpm/trans.c
index 4309c07e..08f70dd7 100644
--- a/lib/libalpm/trans.c
+++ b/lib/libalpm/trans.c
@@ -276,8 +276,8 @@ static int grep(const char *fn, const char *needle)
int _alpm_runscriptlet(alpm_handle_t *handle, const char *filepath,
const char *script, const char *ver, const char *oldver, int is_archive)
{
- char cmdline[PATH_MAX];
- char *argv[] = { SCRIPTLET_SHELL, "-c", cmdline, NULL };
+ char arg0[64], arg1[3], cmdline[PATH_MAX];
+ char *argv[] = { arg0, arg1, cmdline, NULL };
char *tmpdir, *scriptfn = NULL, *scriptpath;
int retval = 0;
size_t len;
@@ -293,6 +293,9 @@ int _alpm_runscriptlet(alpm_handle_t *handle, const char *filepath,
return 0;
}
+ strcpy(arg0, SCRIPTLET_SHELL);
+ strcpy(arg1, "-c");
+
/* create a directory in $root/tmp/ for copying/extracting the scriptlet */
len = strlen(handle->root) + strlen("tmp/alpm_XXXXXX") + 1;
MALLOC(tmpdir, len, RET_ERR(handle, ALPM_ERR_MEMORY, -1));
diff --git a/lib/libalpm/util.c b/lib/libalpm/util.c
index 22e9e359..a392c773 100644
--- a/lib/libalpm/util.c
+++ b/lib/libalpm/util.c
@@ -621,7 +621,9 @@ int _alpm_ldconfig(alpm_handle_t *handle)
if(access(line, F_OK) == 0) {
snprintf(line, PATH_MAX, "%ssbin/ldconfig", handle->root);
if(access(line, X_OK) == 0) {
- char *argv[] = { "ldconfig", NULL };
+ char arg0[32];
+ char *argv[] = { arg0, NULL };
+ strcpy(arg0, "ldconfig");
return _alpm_run_chroot(handle, "/sbin/ldconfig", argv);
}
}
@@ -676,7 +678,8 @@ const char *_alpm_filecache_setup(alpm_handle_t *handle)
{
struct stat buf;
alpm_list_t *i;
- char *cachedir, *tmpdir;
+ char *cachedir;
+ const char *tmpdir;
/* Loop through the cache dirs until we find a usable directory */
for(i = handle->cachedirs; i; i = i->next) {
@@ -995,13 +998,13 @@ int _alpm_archive_fgets(struct archive *a, struct archive_read_buffer *b)
}
if(needed > b->line_size) {
/* need to realloc + copy data to fit total length */
- char *new;
- CALLOC(new, needed, sizeof(char), b->ret = -ENOMEM; goto cleanup);
- memcpy(new, b->line, b->line_size);
+ char *new_line;
+ CALLOC(new_line, needed, sizeof(char), b->ret = -ENOMEM; goto cleanup);
+ memcpy(new_line, b->line, b->line_size);
b->line_size = needed;
- b->line_offset = new + (b->line_offset - b->line);
+ b->line_offset = new_line + (b->line_offset - b->line);
free(b->line);
- b->line = new;
+ b->line = new_line;
}
}
diff --git a/lib/libalpm/util.h b/lib/libalpm/util.h
index e6747827..e35e35b9 100644
--- a/lib/libalpm/util.h
+++ b/lib/libalpm/util.h
@@ -87,7 +87,7 @@
#endif
#define OPEN(fd, path, flags) do { fd = open(path, flags | O_BINARY); } while(fd == -1 && errno == EINTR)
-#define CLOSE(fd) do { int ret; do { ret = close(fd); } while(ret == -1 && errno == EINTR); } while(0)
+#define CLOSE(fd) do { int _ret; do { _ret = close(fd); } while(_ret == -1 && errno == EINTR); } while(0)
/**
* Used as a buffer/state holder for _alpm_archive_fgets().