[BACK]Return to main.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / pkgtools / pkg_install / files / create

Annotation of pkgsrc/pkgtools/pkg_install/files/create/main.c, Revision 1.16

1.16    ! joerg       1: /*     $NetBSD: main.c,v 1.15 2009/05/13 03:33:50 joerg Exp $  */
1.1       schmonz     2:
1.3       jlam        3: #if HAVE_CONFIG_H
                      4: #include "config.h"
                      5: #endif
1.4       jlam        6: #include <nbcompat.h>
1.3       jlam        7: #if HAVE_SYS_CDEFS_H
1.1       schmonz     8: #include <sys/cdefs.h>
1.3       jlam        9: #endif
1.16    ! joerg      10: __RCSID("$NetBSD: main.c,v 1.15 2009/05/13 03:33:50 joerg Exp $");
1.1       schmonz    11:
                     12: /*
                     13:  * FreeBSD install - a package for the installation and maintainance
                     14:  * of non-core utilities.
                     15:  *
                     16:  * Jordan K. Hubbard
                     17:  * 18 July 1993
                     18:  *
                     19:  * This is the create module.
                     20:  *
                     21:  */
                     22:
1.3       jlam       23: #if HAVE_ERR_H
1.1       schmonz    24: #include <err.h>
                     25: #endif
                     26: #include "lib.h"
                     27: #include "create.h"
                     28:
1.15      joerg      29: static const char Options[] = "B:C:D:EF:I:K:L:OP:S:T:UVb:c:d:f:g:i:k:ln:p:r:s:u:v";
1.1       schmonz    30:
                     31: char   *Prefix = NULL;
                     32: char   *Comment = NULL;
                     33: char   *Desc = NULL;
                     34: char   *Display = NULL;
                     35: char   *Install = NULL;
                     36: char   *DeInstall = NULL;
                     37: char   *Contents = NULL;
                     38: char   *Pkgdeps = NULL;
1.8       joerg      39: char   *BuildPkgdeps = NULL;
1.1       schmonz    40: char   *Pkgcfl = NULL;
                     41: char   *BuildVersion = NULL;
                     42: char   *BuildInfo = NULL;
                     43: char   *SizePkg = NULL;
                     44: char   *SizeAll = NULL;
1.2       jschauma   45: char   *Preserve = NULL;
1.1       schmonz    46: char   *SrcDir = NULL;
1.11      joerg      47: char   *DefaultOwner = NULL;
                     48: char   *DefaultGroup = NULL;
1.1       schmonz    49: char   *realprefix = NULL;
1.16    ! joerg      50: const char *CompressionType = NULL;
1.1       schmonz    51: int    update_pkgdb = 1;
1.3       jlam       52: int    create_views = 0;
1.1       schmonz    53: int     PlistOnly = 0;
                     54: int     RelativeLinks = 0;
                     55: Boolean File2Pkg = FALSE;
                     56:
                     57: static void
                     58: usage(void)
                     59: {
1.7       hubertf    60:        fprintf(stderr,
1.13      joerg      61:            "usage: pkg_create [-ElOUVv] [-B build-info-file] [-b build-version-file]\n"
1.15      joerg      62:             "                  [-C cpkgs] [-D displayfile] [-F compression] \n"
                     63:            "                  [-I realprefix] [-i iscript]\n"
1.9       joerg      64:             "                  [-K pkg_dbdir] [-k dscript] [-L SrcDir]\n"
1.7       hubertf    65:             "                  [-n preserve-file] [-P dpkgs] [-p prefix] [-r rscript]\n"
1.11      joerg      66:             "                  [-S size-all-file] [-s size-pkg-file]\n"
                     67:            "                  [-T buildpkgs] [-u owner] [-g group]\n"
                     68:             "                  -c comment -d description -f packlist\n"
1.7       hubertf    69:             "                  pkg-name\n");
1.1       schmonz    70:        exit(1);
                     71: }
                     72:
                     73: int
                     74: main(int argc, char **argv)
                     75: {
                     76:        int     ch;
                     77:
                     78:        setprogname(argv[0]);
                     79:        while ((ch = getopt(argc, argv, Options)) != -1)
                     80:                switch (ch) {
                     81:                case 'v':
                     82:                        Verbose = TRUE;
                     83:                        break;
                     84:
1.3       jlam       85:                case 'E':
                     86:                        create_views = 1;
                     87:                        break;
                     88:
1.15      joerg      89:                case 'F':
                     90:                        CompressionType = optarg;
                     91:                        break;
                     92:
1.1       schmonz    93:                case 'I':
                     94:                        realprefix = optarg;
                     95:                        break;
                     96:
                     97:                case 'O':
                     98:                        PlistOnly = 1;
                     99:                        break;
                    100:
                    101:                case 'U':
                    102:                        update_pkgdb = 0;
                    103:                        break;
                    104:
                    105:                case 'p':
                    106:                        Prefix = optarg;
                    107:                        break;
                    108:
                    109:                case 's':
                    110:                        SizePkg = optarg;
                    111:                        break;
                    112:
                    113:                case 'S':
                    114:                        SizeAll = optarg;
                    115:                        break;
                    116:
                    117:                case 'f':
                    118:                        Contents = optarg;
                    119:                        break;
                    120:
                    121:                case 'c':
                    122:                        Comment = optarg;
                    123:                        break;
                    124:
                    125:                case 'd':
                    126:                        Desc = optarg;
                    127:                        break;
                    128:
1.11      joerg     129:                case 'g':
                    130:                        DefaultGroup = optarg;
                    131:                        break;
                    132:
1.1       schmonz   133:                case 'i':
                    134:                        Install = optarg;
                    135:                        break;
                    136:
1.3       jlam      137:                case 'K':
                    138:                        _pkgdb_setPKGDB_DIR(optarg);
                    139:                        break;
                    140:
1.1       schmonz   141:                case 'k':
                    142:                        DeInstall = optarg;
                    143:                        break;
                    144:
                    145:                case 'l':
                    146:                        RelativeLinks = 1;
                    147:                        break;
                    148:
                    149:                case 'L':
                    150:                        SrcDir = optarg;
                    151:                        break;
                    152:
1.11      joerg     153:                case 'u':
                    154:                        DefaultOwner = optarg;
1.1       schmonz   155:                        break;
                    156:
                    157:                case 'D':
                    158:                        Display = optarg;
                    159:                        break;
                    160:
1.2       jschauma  161:                case 'n':
                    162:                        Preserve = optarg;
1.1       schmonz   163:                        break;
                    164:
                    165:                case 'P':
                    166:                        Pkgdeps = optarg;
                    167:                        break;
                    168:
1.8       joerg     169:                case 'T':
                    170:                        BuildPkgdeps = optarg;
                    171:                        break;
                    172:
1.1       schmonz   173:                case 'C':
                    174:                        Pkgcfl = optarg;
                    175:                        break;
                    176:
                    177:                case 'b':
                    178:                        BuildVersion = optarg;
                    179:                        break;
                    180:
                    181:                case 'B':
                    182:                        BuildInfo = optarg;
                    183:                        break;
                    184:
                    185:                case 'V':
                    186:                        show_version();
                    187:                        /* NOTREACHED */
                    188:
                    189:                case '?':
                    190:                default:
                    191:                        usage();
                    192:                        break;
                    193:                }
                    194:
                    195:        argc -= optind;
                    196:        argv += optind;
                    197:
1.10      joerg     198:        if (argc == 0) {
                    199:                warnx("missing package name");
                    200:                usage();
                    201:        }
                    202:        if (argc != 1) {
                    203:                warnx("only one package name allowed");
                    204:                usage();
1.1       schmonz   205:        }
                    206:
1.11      joerg     207:        if (pkg_perform(*argv))
                    208:                return 0;
                    209:        if (Verbose) {
                    210:                if (PlistOnly)
                    211:                        warnx("package registration failed");
                    212:                else
1.1       schmonz   213:                        warnx("package creation failed");
1.11      joerg     214:        }
                    215:        return 1;
1.1       schmonz   216: }

CVSweb <webmaster@jp.NetBSD.org>