buildprefix -> buildroot

CVS patchset: 816
CVS date: 1996/07/14 16:06:35
This commit is contained in:
root 1996-07-14 16:06:35 +00:00
parent 0fe72e0e37
commit 19dbeeece0
9 changed files with 50 additions and 42 deletions

View File

@ -5,6 +5,11 @@
- removed require_group from rpmrc -- groups are always required
- do not allow Prefix: or Buildprefix: in sub packages
- removed arch_sensitive from rpmrc -- always on
- changed Buildprefix: -> Buildroot: (spec file, rpmrc)
--buildprefix -> --buildroot (command line)
RPM_BUILD_PREFIX -> RPM_BUILD_ROOT
(%prep, %build, %install, %clean)
sorry :-)
2.1.1 -> 2.1.2:
- fixed error message for unrelocateable packages

View File

@ -76,11 +76,11 @@ struct Script *openScript(Spec spec, int builddir, char *name)
} else {
fprintf(script->file, "RPM_ROOT_DIR=\"\"\n");
}
if (getVar(RPMVAR_BUILDPREFIX)) {
fprintf(script->file, "RPM_BUILD_PREFIX=\"%s\"\n",
getVar(RPMVAR_BUILDPREFIX));
if (getVar(RPMVAR_BUILDROOT)) {
fprintf(script->file, "RPM_BUILD_ROOT=\"%s\"\n",
getVar(RPMVAR_BUILDROOT));
} else {
fprintf(script->file, "RPM_BUILD_PREFIX=\"\"\n");
fprintf(script->file, "RPM_BUILD_ROOT=\"\"\n");
}
fprintf(script->file, "RPM_PACKAGE_NAME=\"%s\"\n", spec->name);

View File

@ -373,7 +373,7 @@ void freeSpec(Spec s)
FREE(s->noSource);
FREE(s->noPatch);
FREE(s->prefix);
FREE(s->buildprefix);
FREE(s->buildroot);
freeSources(s);
freeStringBuf(s->prep);
freeStringBuf(s->build);
@ -647,7 +647,7 @@ struct preamble_line {
{RPMTAG_REQUIREFLAGS, 0, "requires"},
{RPMTAG_CONFLICTFLAGS, 0, "conflicts"},
{RPMTAG_DEFAULTPREFIX, 0, "prefix"},
{RPMTAG_BUILDPREFIX, 0, "buildprefix"},
{RPMTAG_BUILDROOT, 0, "buildroot"},
{0, 0, 0}
};
@ -768,7 +768,7 @@ static void parseForDocFiles(struct PackageRec *package, char *line)
/* */
/**********************************************************************/
Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
Spec parseSpec(FILE *f, char *specfile, char *buildRootOverride)
{
char buf[LINE_BUF_SIZE]; /* read buffer */
char buf2[LINE_BUF_SIZE];
@ -780,7 +780,7 @@ Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
StringBuf sb;
char *s = NULL;
char *s1, *s2;
int gotBuildPrefix = 0;
int gotBuildroot = 0;
int gotRoot = 0;
struct PackageRec *cur_package = NULL;
@ -802,7 +802,7 @@ Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
spec->numNoSource = 0;
spec->numNoPatch = 0;
spec->prefix = NULL;
spec->buildprefix = NULL;
spec->buildroot = NULL;
sb = newStringBuf();
reset_spec(); /* Reset the parser */
@ -1003,9 +1003,9 @@ Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
case RPMTAG_URL:
addEntry(cur_package->header, tag, STRING_TYPE, s, 1);
break;
case RPMTAG_BUILDPREFIX:
gotBuildPrefix = 1;
spec->buildprefix = strdup(s);
case RPMTAG_BUILDROOT:
gotBuildroot = 1;
spec->buildroot = strdup(s);
break;
case RPMTAG_DEFAULTPREFIX:
spec->prefix = strdup(s);
@ -1036,7 +1036,7 @@ Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
/* special case */
gotRoot = 1;
message(MESS_DEBUG, "Got root: %s\n", s);
message(MESS_WARNING, "The Root: tag is depricated. Use Buildprefix: instead\n");
message(MESS_WARNING, "The Root: tag is depricated. Use Buildroot: instead\n");
setVar(RPMVAR_ROOT, s);
break;
case RPMTAG_ICON:
@ -1122,30 +1122,30 @@ Spec parseSpec(FILE *f, char *specfile, char *prefixOverride)
return NULL;
}
if (gotRoot && gotBuildPrefix) {
if (gotRoot && gotBuildroot) {
freeSpec(spec);
error(RPMERR_BADSPEC,
"Spec file can not have both Root: and Buildprefix:");
"Spec file can not have both Root: and Buildroot:");
return NULL;
}
if (spec->buildprefix) {
if (spec->buildroot) {
/* This package can do build prefixes */
if (prefixOverride) {
setVar(RPMVAR_ROOT, prefixOverride);
setVar(RPMVAR_BUILDPREFIX, prefixOverride);
if (buildRootOverride) {
setVar(RPMVAR_ROOT, buildRootOverride);
setVar(RPMVAR_BUILDROOT, buildRootOverride);
} else {
if ((s = getVar(RPMVAR_BUILDPREFIX))) {
if ((s = getVar(RPMVAR_BUILDROOT))) {
/* Take build prefix from rpmrc */
setVar(RPMVAR_ROOT, s);
} else {
/* Use default */
setVar(RPMVAR_ROOT, spec->buildprefix);
setVar(RPMVAR_BUILDPREFIX, spec->buildprefix);
setVar(RPMVAR_ROOT, spec->buildroot);
setVar(RPMVAR_BUILDROOT, spec->buildroot);
}
}
} else {
/* Package can not do build prefixes */
if (prefixOverride) {
if (buildRootOverride) {
freeSpec(spec);
error(RPMERR_BADARG, "Package can not do build prefixes");
return NULL;

View File

@ -10,7 +10,7 @@
typedef struct SpecRec *Spec;
Spec parseSpec(FILE *f, char *specfile, char *prefixOverride);
Spec parseSpec(FILE *f, char *specfile, char *buildRootOverride);
void freeSpec(Spec s);
void dumpSpec(Spec s, FILE *f);

View File

@ -40,7 +40,7 @@ struct SpecRec {
StringBuf clean;
char *prefix;
char *buildprefix;
char *buildroot;
struct PackageRec *packages;
/* The first package record is the "main" package and contains

View File

@ -72,7 +72,7 @@ static struct packageFieldsRec subpackageFields[] = {
{ RPMTAG_COPYRIGHT, 0, 0 },
{ RPMTAG_PACKAGER, 0, 0 },
{ RPMTAG_DEFAULTPREFIX, 0, 0 },
{ RPMTAG_BUILDPREFIX, 0, 0 },
{ RPMTAG_BUILDROOT , 0, 0 },
{ 0, 0, 0 },
};

View File

@ -83,7 +83,7 @@ extern const int rpmTagTableSize;
#define RPMTAG_CONFLICTNAME 1054
#define RPMTAG_CONFLICTVERSION 1055
#define RPMTAG_DEFAULTPREFIX 1056
#define RPMTAG_BUILDPREFIX 1057
#define RPMTAG_BUILDROOT 1057
#define RPMTAG_INSTALLPREFIX 1058
#define RPMFILE_STATE_NORMAL 0
@ -154,7 +154,7 @@ extern const int rpmTagTableSize;
#define RPMVAR_EXCLUDEDOCS 23
#define RPMVAR_BUILDARCH 24
#define RPMVAR_OS 25
#define RPMVAR_BUILDPREFIX 26
#define RPMVAR_BUILDROOT 26
#define RPMVAR_DBPATH 27
#define RPMVAR_LASTVAR 28 /* IMPORTANT to keep right! */

View File

@ -25,7 +25,7 @@ struct archEquiv {
struct option optionTable[] = {
{ "build_arch", RPMVAR_BUILDARCH, 0 },
{ "builddir", RPMVAR_BUILDDIR, 0 },
{ "buildprefix", RPMVAR_BUILDPREFIX, 0 },
{ "buildroot", RPMVAR_BUILDROOT, 0 },
{ "dbpath", RPMVAR_DBPATH, 0 },
{ "distribution", RPMVAR_DISTRIBUTION, 0 },
{ "docdir", RPMVAR_DOCDIR, 0 },

29
rpm.c
View File

@ -25,7 +25,7 @@
#define GETOPT_RECOMPILE 1004
#define GETOPT_ADDSIGN 1005
#define GETOPT_RESIGN 1006
#define GETOPT_BUILDPREFIX 1007
#define GETOPT_BUILDROOT 1007
#define GETOPT_PROVIDES 1008
#define GETOPT_QUERYBYNUMBER 1009
#define GETOPT_DBPATH 1010
@ -48,7 +48,8 @@ void printHelp(void);
void printVersion(void);
void printBanner(void);
void printUsage(void);
int build(char *arg, int buildAmount, char *passPhrase, char *prefixOverride);
int build(char *arg, int buildAmount, char *passPhrase,
char *buildRootOverride);
void printVersion(void) {
printf(_("RPM version %s\n"), version);
@ -178,7 +179,7 @@ void printHelp(void) {
puts(_(" --short-circuit - skip straight to specified stage (only for c,i)"));
puts(_(" --clean - remove build tree when done"));
puts(_(" --sign - generate PGP signature"));
puts(_(" --buildprefix <s> - use s as the build prefix"));
puts(_(" --buildroot <s> - use s as the build root"));
puts(_(" --test - do not execute any stages"));
puts(_(" --time-check <s> - set the time check to S seconds (0 disables it)"));
puts(_(""));
@ -196,7 +197,8 @@ void printHelp(void) {
puts(_(" --initdb - make sure a valid database exists"));
}
int build(char *arg, int buildAmount, char *passPhrase, char *prefixOverride) {
int build(char *arg, int buildAmount, char *passPhrase,
char *buildRootOverride) {
FILE *f;
Spec s;
char * specfile;
@ -216,7 +218,7 @@ int build(char *arg, int buildAmount, char *passPhrase, char *prefixOverride) {
fprintf(stderr, _("unable to open: %s\n"), specfile);
return 1;
}
s = parseSpec(f, specfile, prefixOverride);
s = parseSpec(f, specfile, buildRootOverride);
fclose(f);
if (s) {
if (verifySpec(s)) {
@ -265,7 +267,7 @@ int main(int argc, char ** argv) {
char * rootdir = "/";
char * specFile;
char *passPhrase = "";
char *prefixOverride = NULL;
char *buildRootOverride = NULL;
char *arch = NULL;
char *os = NULL;
char * smallArgv[2] = { NULL, NULL };
@ -276,7 +278,7 @@ int main(int argc, char ** argv) {
{ "all", 0, 0, 'a' },
{ "arch", 1, 0, 0 },
{ "build", 1, 0, 'b' },
{ "buildprefix", 1, 0, GETOPT_BUILDPREFIX },
{ "buildroot", 1, 0, GETOPT_BUILDROOT },
{ "checksig", 0, 0, 'K' },
{ "clean", 0, &clean, 0 },
{ "configfiles", 0, 0, 'c' },
@ -605,11 +607,11 @@ int main(int argc, char ** argv) {
bigMode = MODE_RECOMPILE;
break;
case GETOPT_BUILDPREFIX:
case GETOPT_BUILDROOT:
if (bigMode != MODE_UNKNOWN &&
bigMode != MODE_BUILD && bigMode != MODE_REBUILD)
argerror(_("only one major mode may be specified"));
prefixOverride = optarg;
buildRootOverride = optarg;
break;
case GETOPT_RESIGN:
@ -679,8 +681,9 @@ int main(int argc, char ** argv) {
else
bigMode = MODE_QUERYTAGS;
if (prefixOverride && bigMode != MODE_BUILD && bigMode != MODE_REBUILD) {
argerror("--buildprefix may only be used during package builds");
if (buildRootOverride && bigMode != MODE_BUILD &&
bigMode != MODE_REBUILD) {
argerror("--buildroot may only be used during package builds");
}
if (bigMode != MODE_QUERY && bigMode != MODE_INSTALL &&
@ -846,7 +849,7 @@ int main(int argc, char ** argv) {
if (doSourceInstall("/", argv[optind++], &specFile))
exit(1);
if (build(specFile, buildAmount, passPhrase, prefixOverride)) {
if (build(specFile, buildAmount, passPhrase, buildRootOverride)) {
exit(1);
}
}
@ -887,7 +890,7 @@ int main(int argc, char ** argv) {
while (optind < argc)
if (build(argv[optind++], buildAmount,
passPhrase, prefixOverride)) {
passPhrase, buildRootOverride)) {
exit(1);
}
break;