Radish alpha
H
rad:z3QDZAW2FAfuLvihrhiyDC9fAD8G9
HardenedBSD Package Manager
Radicle
Git
Bring pkg_compat into pkgng itself
Baptiste Daroussin committed 13 years ago
commit 237c1ae27c816430ecbc1d35b933b88bb4cdfafa
parent 5e58d5d
3 files changed +102 -0
modified pkg/register.c
@@ -189,9 +189,12 @@ exec_register(int argc, char **argv)

	free(plist);

+
#ifndef PKG_COMPAT
	if (pkgdb_open(&db, PKGDB_DEFAULT) != EPKG_OK) {
		return (EX_IOERR);
	}
+
#else
+
#endif

	pkg_analyse_files(db, pkg);

@@ -215,14 +218,19 @@ exec_register(int argc, char **argv)
		free(input_path);
	}

+
#ifndef PKG_COMPAT
	if (pkgdb_register_ports(db, pkg) != EPKG_OK)
		retcode = EX_SOFTWARE;
+
#else
+
#endif

	pkg_get(pkg, PKG_MESSAGE, &message);
	if (message != NULL && !legacy)
		printf("%s\n", message);

+
#ifndef PKG_COMPAT
	pkgdb_close(db);
+
#endif
	pkg_free(pkg);

	return (retcode);
added pkg_compat/Makefile
@@ -0,0 +1,18 @@
+
PROG=	pkg_compat
+

+
SRCS=	pkg_compat.c register.c create.c
+

+
CFLAGS=	-I${.CURDIR}/../external/libyaml/include \
+
	-I${.CURDIR}/../external/uthash \
+
	-I${.CURDIR}/../libpkg \
+
	-I${.CURDIR}/../pkg \
+
	-DPKG_COMPAT=yes
+

+
.PATH:	${.CURDIR}/../pkg
+

+
LDFLAGS=	-L${.OBJDIR}/../libpkg -lpkg
+

+
NO_MAN=	yes
+
WARNS=	6
+

+
.include <bsd.prog.mk>
added pkg_compat/pkg_compat.c
@@ -0,0 +1,76 @@
+
/*
+
 * Copyright (c) 2012 Baptiste Daroussin <bapt@FreeBSD.org>
+
 * All rights reserved.
+
 * 
+
 * Redistribution and use in source and binary forms, with or without
+
 * modification, are permitted provided that the following conditions
+
 * are met:
+
 * 1. Redistributions of source code must retain the above copyright
+
 *    notice, this list of conditions and the following disclaimer
+
 *    in this position and unchanged.
+
 * 2. Redistributions in binary form must reproduce the above copyright
+
 *    notice, this list of conditions and the following disclaimer in the
+
 *    documentation and/or other materials provided with the distribution.
+
 * 
+
 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR(S) ``AS IS'' AND ANY EXPRESS OR
+
 * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
+
 * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
+
 * IN NO EVENT SHALL THE AUTHOR(S) BE LIABLE FOR ANY DIRECT, INDIRECT,
+
 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
+
 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+
 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+
 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+
 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
 */
+

+
#include <sys/types.h>
+
#include <sys/param.h>
+

+
#include <stdbool.h>
+
#include <stdio.h>
+
#include <string.h>
+
#include <stdlib.h>
+
#include <sysexits.h>
+
#include <unistd.h>
+

+
#include <err.h>
+

+
#include <pkg.h>
+
#include "pkgcli.h"
+

+
/* -i stagedir -l legacy -f tmpplist -m metadir */
+

+
struct pkg *pkg;
+

+
static void
+
usage() {
+
	fprintf(stderr, "usage: %s register [-ld] [-i <input-path>]"
+
	    " -m <metadatadir> -f <plist-file>\n", getprogname());
+
	fprintf(stderr, "usage: %s create [-n] [-f format] [-o outdir] "
+
	    "[-p plist] [-r rootdir] -m manifestdir\n", getprogname());
+

+
	exit(EX_USAGE);
+
}
+

+
int
+
main(int argc, char **argv)
+
{
+
	const char *cmd;
+

+
	if (argc < 2)
+
		usage();
+

+
	cmd = argv[1];
+
	argc--;
+
	argv++;
+

+
	if (strcmp(cmd, "register") == 0)
+
		return (exec_register(argc, argv));
+
	else if (strcmp(cmd, "create") == 0)
+
		return (exec_create(argc, argv));
+

+
	usage();
+
	/* NOT REACHED */
+
	return (EXIT_FAILURE);
+
}