From f8e9c732eaf7f5d5d6ce3559767b09356a42db0d Mon Sep 17 00:00:00 2001 From: Stefan Fiedler Date: Sun, 5 Aug 2007 19:47:07 +0000 Subject: [PATCH] Stefan Fiedler: Use the 7th field of each config//packages line for storing package extraversions instead of package prefixes. [2006122018295531543] (https://www.rocklinux.net/submaster) git-svn-id: http://www.rocklinux.org/svn/rock-linux/trunk@8660 c5f82cb5-29bc-0310-9cd0-bff59a50e3bc --- misc/tools-source/config_helper.c | 21 +++++++++++---------- scripts/Build-Target | 8 ++------ scripts/Create-PkgList | 10 +++++++--- scripts/config.func | 4 ++-- 4 files changed, 22 insertions(+), 21 deletions(-) diff --git a/misc/tools-source/config_helper.c b/misc/tools-source/config_helper.c index f2b24af85..4f784f3fa 100644 --- a/misc/tools-source/config_helper.c +++ b/misc/tools-source/config_helper.c @@ -55,7 +55,7 @@ struct package { char *name; char *alias; char *version; - char *prefix; + char *extraversion; /* flags must end with a space character (for easily searching for flags). */ char *flags; @@ -77,7 +77,7 @@ int read_pkg_list(const char *file) { free(pkg->name); free(pkg->alias); free(pkg->version); - free(pkg->prefix); + free(pkg->extraversion); free(pkg->flags); pkg = (pkg_tmp=pkg)->next; free(pkg_tmp); @@ -120,7 +120,7 @@ int read_pkg_list(const char *file) { pkg_tmp->version = strdup(tok); tok = strtok(0, " "); - pkg_tmp->prefix = strdup(tok); + pkg_tmp->extraversion = strdup(tok); tok = strtok(0, "\n"); tok[strlen(tok)-1] = 0; @@ -149,7 +149,7 @@ int write_pkg_list(const char *file) { fprintf(f, " %s %s %s", pkg->prio, pkg->repository, pkg->name); if (strcmp(pkg->name, pkg->alias)) fprintf(f, "=%s", pkg->alias); - fprintf(f, " %s %s %s0\n", pkg->version, pkg->prefix, pkg->flags); + fprintf(f, " %s %s %s0\n", pkg->version, pkg->extraversion, pkg->flags); pkg = pkg->next; } @@ -193,7 +193,7 @@ char * create_pkg_line(struct package *pkg) if (strcmp(pkg->name, pkg->alias)) offset += snprintf(line+offset, 1024-offset, "=%s", pkg->alias); offset += snprintf(line+offset, 1024-offset, " %s %s %s0\n", - pkg->version, pkg->prefix, pkg->flags); + pkg->version, pkg->extraversion, pkg->flags); return line; } @@ -260,7 +260,7 @@ int pkgswitch(int mode, char **args) free(pkg->name); free(pkg->alias); free(pkg->version); - free(pkg->prefix); + free(pkg->extraversion); free(pkg->flags); pkg = (pkg_tmp=pkg)->next; free(pkg_tmp); @@ -295,7 +295,7 @@ int pkgfork(char *pkgname, char *xpkg, char** opt) fork->name = strdup(pkgname); fork->alias = strdup(xpkg); fork->version = strdup(pkg->version); - fork->prefix = strdup(pkg->prefix); + fork->extraversion = strdup(pkg->extraversion); fork->flags = strdup(pkg->flags); fork->next = pkg->next; @@ -322,10 +322,11 @@ int pkgfork(char *pkgname, char *xpkg, char** opt) fork->version = strdup(opt[i+1]); } - else if (!strcmp(opt[i], "prefix")) + else if (!strcmp(opt[i], "extraversion")) { - free(fork->prefix); - fork->prefix = strdup(opt[+1]); + free(fork->extraversion); + fork->extraversion = (strlen(opt[i+1]) == 0) ? + strdup("0") : strdup(opt[i+1]); } else if (!strcmp(opt[i], "flag")) diff --git a/scripts/Build-Target b/scripts/Build-Target index a7b3af981..30933cfd5 100755 --- a/scripts/Build-Target +++ b/scripts/Build-Target @@ -315,7 +315,7 @@ fi # pkgloop_package() { for x in stagelevel pkg_depnr pkg_stages pkg_pri pkg_tree \ - pkg_name pkg_ver pkg_prefix pkg_extra + pkg_name pkg_ver pkg_extraver pkg_extra do eval "$x=\$1" ; shift ; done # Maybe this is a forked package @@ -331,12 +331,8 @@ pkgloop_package() { cmd_root="-root auto" [ $stagelevel -gt 1 ] && cmd_root="$cmd_root -chroot" - if [ "$pkg_prefix" != "/" ] ; then - cmd_prefix="-prefix $pkg_prefix" - else cmd_prefix="" ; fi - cmd_buildpkg="./scripts/Build-Pkg -$stagelevel -cfg $config -nopostinst" - cmd_buildpkg="$cmd_buildpkg $cmd_root $cmd_prefix $pkg_basename=$pkg_name" + cmd_buildpkg="$cmd_buildpkg $cmd_root $pkg_basename=$pkg_name" # Execute action handler pkgloop_action || [ "$ROCKCFG_ABORT_ON_ERROR" != 1 ] || exit 1 diff --git a/scripts/Create-PkgList b/scripts/Create-PkgList index 30e0d7e6d..6579b2951 100755 --- a/scripts/Create-PkgList +++ b/scripts/Create-PkgList @@ -54,7 +54,7 @@ function print_package() { } if ( ! disable ) { print defset, stages, pri, pkgtree, - package, ver, "/" categories flags, 0; + package, ver, extraver categories flags, 0; } } @@ -72,7 +72,7 @@ FNR == 1 { ignore = (a[3] ".desc" != a[4]); defset="X"; pri="999.999"; stages="----------"; - ver="0000"; categories="" + ver="0000"; extraver=0; categories="" ver_dup=0; flags="" } @@ -83,7 +83,11 @@ FNR == 1 { /^\[(V|VER|VERSION)\]/ { split($0, a, /[ \t]+/); - if ( ver_dup == 0 ) ver=a[2]; + if ( ver_dup == 0 ) { + ver=a[2] + if ( a[3] == "" ) extraver=0 + else extraver=a[3] + } ver_dup = 1; } diff --git a/scripts/config.func b/scripts/config.func index cab919d1d..02646e79c 100644 --- a/scripts/config.func +++ b/scripts/config.func @@ -130,10 +130,10 @@ then version) script="$script \$6=\"$2\";" ;; - prefix) + extraversion) script="$script \$7=\"$2\";" ;; - flag) + flag) script="$script sub(\" 0\$\", \" $2 0\");" ;; unflag)