# HG changeset patch # User Carlo de Falco # Date 1390554855 -3600 # Node ID b26d6be1767a85541006704249fa3da100ffd3de # Parent 634d9989bf7be75c045d57adb55b3fd1ad60a882 Move definifion of default package paths to separate function. * scripts/pkg/private/default_prefix.m: New function. * scripts/pkg/pkg.m: use new function default_prefix. * scripts/pkg/private/get_archprefix.m: use new function default_prefix. diff -r 634d9989bf7b -r b26d6be1767a scripts/pkg/pkg.m --- a/scripts/pkg/pkg.m Wed Feb 12 08:39:00 2014 -0800 +++ b/scripts/pkg/pkg.m Fri Jan 24 10:14:15 2014 +0100 @@ -280,14 +280,7 @@ global_install = ((ispc () && ! isunix ()) || (geteuid () == 0)); if (isbool (prefix)) - if (global_install) - prefix = fullfile (OCTAVE_HOME (), "share", "octave", "packages"); - archprefix = fullfile (octave_config_info ("libdir"), - "octave", "packages"); - else - prefix = fullfile ("~", "octave"); - archprefix = prefix; - endif + [prefix, archprefix] = default_prefix (global_install); prefix = tilde_expand (prefix); archprefix = tilde_expand (archprefix); endif @@ -326,15 +319,12 @@ case "-local" global_install = false; if (! user_prefix) - prefix = tilde_expand (fullfile ("~", "octave")); - archprefix = prefix; + [prefix, archprefix] = default_prefix (global_install); endif case "-global" global_install = true; if (! user_prefix) - prefix = fullfile (OCTAVE_HOME (), "share", "octave", "packages"); - archprefix = fullfile (octave_config_info ("libdir"), - "octave", "packages"); + [prefix, archprefix] = default_prefix (global_install); endif case available_actions if (strcmp (action, "none")) diff -r 634d9989bf7b -r b26d6be1767a scripts/pkg/private/default_prefix.m --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/scripts/pkg/private/default_prefix.m Fri Jan 24 10:14:15 2014 +0100 @@ -0,0 +1,35 @@ +## Copyright (C) 2014 Carlo de Falco +## +## This file is part of Octave. +## +## Octave is free software; you can redistribute it and/or modify it +## under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 3 of the License, or (at +## your option) any later version. +## +## Octave is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with Octave; see the file COPYING. If not, see +## . + +## -*- texinfo -*- +## @deftypefn {Function File} {[@var{prefix}, @var{archprefix} =} @ +## default_prefix (@var{global_install}) +## Undocumented internal function. +## @end deftypefn + +function [prefix, archprefix] = default_prefix (global_install) + if (global_install) + prefix = fullfile (OCTAVE_HOME (), "share", "octave", "packages"); + archprefix = fullfile (octave_config_info ("libdir"), "octave", + "packages", [desc.name "-" desc.version]); + else + prefix = tilde_expand (fullfile ("~", "octave")); + archprefix = prefix; + endif +endfunction + diff -r 634d9989bf7b -r b26d6be1767a scripts/pkg/private/getarchprefix.m --- a/scripts/pkg/private/getarchprefix.m Wed Feb 12 08:39:00 2014 -0800 +++ b/scripts/pkg/private/getarchprefix.m Fri Jan 24 10:14:15 2014 +0100 @@ -24,8 +24,7 @@ function archprefix = getarchprefix (desc, global_install) if (global_install) - archprefix = fullfile (octave_config_info ("libdir"), "octave", - "packages", [desc.name "-" desc.version]); + [~, archprefix] = default_prefix (global_install); else archprefix = desc.dir; endif