Index: ltib
===================================================================
RCS file: /sources/ltib/ltib/ltib,v
retrieving revision 1.89
diff -u -r1.89 ltib
--- ltib	20 Oct 2012 14:05:42 -0000	1.89
+++ ltib	19 Mar 2013 12:41:48 -0000
@@ -45,6 +45,7 @@
 $top  = $FindBin::Bin;
 $bdir = "/opt";
 $verbose = 0;
+$rpmdirarg = "rpm";
 
 # $cf (globals), these can be set/overridden in the resource file .ltibrc
 # This can be in the same directory as the script, or in the user's
@@ -54,8 +55,8 @@
     bldbase      => $top,
     rpmipfx      => '/',
     rpmdb        => '/var/lib/rpm',
-    rpmdir       => "$top/rpm",
-    _rpmdir      => "$top/rpm/RPMS",
+    rpmdir       => "$top/$rpmdirarg",
+    _rpmdir      => "$top/$rpmdirarg/RPMS",
     rpm          => "$bdir/ltib/usr/bin/rpm",
     rpmbuild     => "rpmbuild",
     sudo         => "sudo",
@@ -199,12 +200,13 @@
 
     help         => 0,
     clobber      => 0,
-    need_frb     => 0
+    need_frb     => 0,
+    rootfs       => "rootfs",
 };
 
 use strict 'vars';
 use vars qw($cf $config_deps $build_deps $install_deps $tspec
-            $pcf $ppcf $rev_install_deps $pcac $verbose);
+            $pcf $ppcf $rev_install_deps $pcac $verbose $rpmdirarg);
 
 # package config dependencies
 # re-build the key (lhs) if any of the dependents (rhs) in the list have changed
@@ -379,6 +381,8 @@
         --ignorelock  : use if you really want to ignore any locks (careful!)
         --fullbsp     : used with -m release to copy additional content
         --no-sudo     : don't check sudo, work around for broken sudo (fc9)
+        --rootfs      : rootfs folder.
+        --rpmdir      : rpm folder.
         --help|h      : help on usage
 TXT
 
@@ -434,6 +438,8 @@
         "ignorelock" => \$cf->{ignorelock},
         "fullbsp"    => \$cf->{fullbsp},
         "no-sudo"    => \$cf->{no_sudo_check},
+        "rootfs:s"   => \$cf->{rootfs},
+        "rpmdir:s"   => \$rpmdirarg,
         "help|h"     => \$cf->{help},
       ) or die $usage;
 
@@ -450,6 +456,10 @@
 die "invalid mode $cf->{mode}\n", $usage
     unless $cf->{mode} =~ m,^(buildrpms|addsrpms|clean|distclean|scbuild|scinstall|prep|patchmerge|scdeploy|listpkgs|release|config|shell|trelease|selectype),;
 
+# since $cf get default values, we "re-set" them there in case argued.
+$cf->{rpmdir}  = "$cf->{bldbase}/$rpmdirarg";
+$cf->{_rpmdir} = "$cf->{bldbase}/$rpmdirarg/RPMS";
+
 if($cf->{sn}) {
     if($cf->{configure}) {
         $cf->{configure} = '';
@@ -523,7 +533,7 @@
 load_system_config($cf);
 
 # make sure the root prefix for rpm is never set to / by the user
-$cf->{rpmroot} = $cf->{rfsbase} = "$cf->{bldbase}/rootfs";
+$cf->{rpmroot} = $cf->{rfsbase} = "$cf->{bldbase}/$cf->{rootfs}";
 
 # set the default pkg_config_path, needs to be overridden for host package
 # builds (edje for example)
@@ -2824,7 +2834,7 @@
 
     # if a relocatable package, and we are installing in our project area
     # then we can bypass this strict test
-    my $rootfs = "$cf->{top}/rootfs";
+    my $rootfs = "$cf->{top}/$cf->{rootfs}";
     $len = length($rootfs);
     if($pkg_prefix && unpack("A$len", $inst_pfx) eq $rootfs) {
        warn("skip host clobber check, pkg_prefix=$pkg_prefix inst=$inst_pfx\n")
