Commit f6401695 authored by Claes Sjofors's avatar Claes Sjofors

New project directory tree structure

parent e3cf166f
...@@ -471,6 +471,7 @@ pwrc_create_func() ...@@ -471,6 +471,7 @@ pwrc_create_func()
local proot local proot
local bname local bname
local pname local pname
local platforms="x86_linux x86_64_linux"
let argc=$# let argc=$#
cmd="project" cmd="project"
...@@ -536,33 +537,39 @@ pwrc_create_func() ...@@ -536,33 +537,39 @@ pwrc_create_func()
return return
fi fi
fi fi
mkdir $proot/login mkdir $proot/bld
mkdir $proot/common mkdir $proot/src
mkdir $proot/common/src mkdir $proot/src/pop
mkdir $proot/common/src/pop mkdir $proot/src/rtt
mkdir $proot/common/src/rtt mkdir $proot/src/tlog
mkdir $proot/common/src/rttbld mkdir $proot/src/login
mkdir $proot/common/src/tlog mkdir $proot/src/db
mkdir $proot/common/load mkdir $proot/src/doc
mkdir $proot/common/db mkdir $proot/src/cnf
mkdir $proot/common/inc mkdir $proot/src/appl
mkdir $proot/common/tmp mkdir $proot/bld/common
mkdir $proot/common/web mkdir $proot/bld/common/load
mkdir $proot/common/log mkdir $proot/bld/common/inc
mkdir $proot/common/doc mkdir $proot/bld/common/tmp
mkdir $proot/$platform mkdir $proot/bld/common/web
mkdir $proot/$platform/exe mkdir $proot/bld/common/log
mkdir $proot/$platform/lib mkdir $proot/bld/common/rttbld
mkdir $proot/$platform/obj for pl in $platforms
mkdir $proot/$platform/lis do
mkdir $proot/bld/$pl
mkdir $proot/bld/$pl/exe
mkdir $proot/bld/$pl/lib
mkdir $proot/bld/$pl/obj
mkdir $proot/bld/$pl/lis
done
# Create project info file # Create project info file
sysinfo="$proot/login/sysinfo.txt" sysinfo="$proot/src/login/sysinfo.txt"
echo "Revision history" >> $sysinfo echo "Revision history" >> $sysinfo
echo "`date +%F` $USER Project created" >> $sysinfo echo "`date +%F` $USER Project created" >> $sysinfo
# Create local setup script # Create local setup script
cat > $proot/login/login.sh << EOF cat > $proot/src/login/login.sh << EOF
#! /bin/bash #! /bin/bash
# #
# Local setup # Local setup
...@@ -570,7 +577,7 @@ pwrc_create_func() ...@@ -570,7 +577,7 @@ pwrc_create_func()
# Printer command for plc documents # Printer command for plc documents
#export pwr_foe_gre_print="lpr -P lp1" #export pwr_foe_gre_print="lpr -P lp1"
if [ -e "$pwrp_login/sysinfo.txt" ]; then if [ -e "\$pwrp_login/sysinfo.txt" ]; then
echo "-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_" echo "-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_"
echo "Welcome to" echo "Welcome to"
echo "\`\$pwr_exe/pwrp_env.sh show project\`" echo "\`\$pwr_exe/pwrp_env.sh show project\`"
...@@ -580,10 +587,10 @@ if [ -e "$pwrp_login/sysinfo.txt" ]; then ...@@ -580,10 +587,10 @@ if [ -e "$pwrp_login/sysinfo.txt" ]; then
fi fi
EOF EOF
chmod a+x $proot/login/login.sh chmod a+x $proot/src/login/login.sh
# Create a xtt_help.dat # Create a xtt_help.dat
cat > $proot/$platform/exe/xtt_help.dat << EOF cat > $proot/src/cnf/xtt_help.dat << EOF
<topic> index <topic> index
<image> pwr_logga.gif <image> pwr_logga.gif
...@@ -849,24 +856,26 @@ pwrc_set_func() ...@@ -849,24 +856,26 @@ pwrc_set_func()
fi fi
export pwrp_root=$proot export pwrp_root=$proot
export pwrp_login=$pwrp_root/login export pwrp_login=$pwrp_root/src/login
export pwrp_src=$pwrp_root/common/src export pwrp_src=$pwrp_root/src
export pwrp_pop=$pwrp_root/common/src/pop export pwrp_pop=$pwrp_root/src/pop
export pwrp_rtt=$pwrp_root/common/src/rtt export pwrp_rtt=$pwrp_root/src/rtt
export pwrp_rttbld=$pwrp_root/common/src/rttbld export pwrp_appl=$pwrp_root/src/appl
export pwrp_tlog=$pwrp_root/common/src/tlog export pwrp_doc=$pwrp_root/src/doc
export pwrp_load=$pwrp_root/common/load export pwrp_db=$pwrp_root/src/db
export pwrp_db=$pwrp_root/common/db export pwrp_cnf=$pwrp_root/src/cnf
export pwrp_inc=$pwrp_root/common/inc export pwrp_tlog=$pwrp_root/src/tlog
export pwrp_rttbld=$pwrp_root/bld/common/rttbld
export pwrp_load=$pwrp_root/bld/common/load
export pwrp_inc=$pwrp_root/bld/common/inc
export pwrp_tmp=$pwrp_root/bld/common/tmp
export pwrp_web=$pwrp_root/bld/common/web
export pwrp_log=$pwrp_root/bld/common/log
export pwrp_exe=$pwrp_root/bld/$platform/exe
export pwrp_lib=$pwrp_root/bld/$platform/lib
export pwrp_obj=$pwrp_root/bld/$platform/obj
export pwrp_lis=$pwrp_root/bld/$platform/lis
export pwrp_cmn=$pwrp_root export pwrp_cmn=$pwrp_root
export pwrp_tmp=$pwrp_root/common/tmp
export pwrp_web=$pwrp_root/common/web
export pwrp_log=$pwrp_root/common/log
export pwrp_doc=$pwrp_root/common/doc
export pwrp_exe=$pwrp_root/$platform/exe
export pwrp_lib=$pwrp_root/$platform/lib
export pwrp_obj=$pwrp_root/$platform/obj
export pwrp_lis=$pwrp_root/$platform/lis
export PATH=$PATH:$pwrp_exe export PATH=$PATH:$pwrp_exe
export CDPATH= export CDPATH=
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
#include "co_msgwindow.h" #include "co_msgwindow.h"
#include "co_dcli.h" #include "co_dcli.h"
#include "co_time.h" #include "co_time.h"
#include "co_syi.h"
#include "rt_load.h" #include "rt_load.h"
#include "wb_foe_msg.h" #include "wb_foe_msg.h"
#include "wb_pwrb_msg.h" #include "wb_pwrb_msg.h"
...@@ -85,6 +86,8 @@ void wb_build::node( char *nodename, void *volumelist, int volumecnt) ...@@ -85,6 +86,8 @@ void wb_build::node( char *nodename, void *volumelist, int volumecnt)
int bussid = -1; int bussid = -1;
int rebuild = 1; int rebuild = 1;
pwr_tStatus status; pwr_tStatus status;
char currentnode[80];
pwr_tStatus sumsts;
printf( "Build node %s\n", nodename); printf( "Build node %s\n", nodename);
...@@ -141,18 +144,127 @@ void wb_build::node( char *nodename, void *volumelist, int volumecnt) ...@@ -141,18 +144,127 @@ void wb_build::node( char *nodename, void *volumelist, int volumecnt)
} }
} }
} }
if ( opt.force || opt.manual || rebuild) if ( opt.force || opt.manual || rebuild)
m_sts = lfu_create_bootfile( nodename, (lfu_t_volumelist *)volumelist, volumecnt, m_sts = lfu_create_bootfile( nodename, (lfu_t_volumelist *)volumelist, volumecnt,
opt.debug); opt.debug);
else else
m_sts = PWRB__NOBUILT; m_sts = PWRB__NOBUILT;
if ( m_sts != PWRB__NOBUILT) {
sumsts = m_sts;
syi_NodeName( &m_sts, currentnode, sizeof(currentnode));
if ( cdh_NoCaseStrcmp( nodename, currentnode) == 0) {
pwr_tFileName src_fname, dest_fname;
pwr_tCmd cmd;
pwr_tTime dest_time, src_time;
// Copy xtt_help.dat from $pwrp_cnf to $pwrp_exe
sprintf( src_fname, "$pwrp_cnf/%s/xtt_help.dat", nodename);
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
if ( evenSts()) {
strcpy( src_fname, "$pwrp_cnf/xtt_help.dat");
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
if ( evenSts()) {
char msg[200];
sprintf( msg, "File is missing $pwrp_cnf/xtt_help.dat");
MsgWindow::message('E', msg, msgw_ePop_Yes);
}
}
if ( oddSts()) {
strcpy( dest_fname, "$pwrp_exe/xtt_help.dat");
dcli_translate_filename( dest_fname, dest_fname);
m_sts = dcli_file_time( dest_fname, &dest_time);
if ( opt.force || evenSts() || src_time.tv_sec > dest_time.tv_sec) {
sprintf( cmd, "cp %s %s", src_fname, dest_fname);
system( cmd);
sprintf( cmd, "Build: Copy %s -> $pwrp_exe", src_fname);
MsgWindow::message( 'I', cmd, msgw_ePop_No);
m_sts = PWRB__SUCCESS;
}
else
m_sts = PWRB__NOBUILT;
}
if ( sumsts == PWRB__NOBUILT && m_sts != PWRB__NOBUILT)
sumsts = m_sts;
// Copy pwrp_alias.dat from $pwrp_cnf to $pwrp_load
sprintf( src_fname, "$pwrp_cnf/%s/pwrp_alias.dat", nodename);
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
if ( evenSts()) {
strcpy( src_fname, "$pwrp_cnf/pwrp_alias.dat");
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
}
if ( oddSts()) {
strcpy( dest_fname, "$pwrp_load/pwrp_alias.dat");
dcli_translate_filename( dest_fname, dest_fname);
m_sts = dcli_file_time( dest_fname, &dest_time);
if ( opt.force || evenSts() || src_time.tv_sec > dest_time.tv_sec) {
sprintf( cmd, "cp %s %s", src_fname, dest_fname);
system( cmd);
sprintf( cmd, "Build: Copy %s -> $pwrp_load", src_fname);
MsgWindow::message( 'I', cmd, msgw_ePop_No);
m_sts = PWRB__SUCCESS;
}
else
m_sts = PWRB__NOBUILT;
}
else
m_sts = PWRB__NOBUILT;
if ( sumsts == PWRB__NOBUILT && m_sts != PWRB__NOBUILT)
sumsts = m_sts;
// Copy ld_appl_...txt from $pwrp_cnf to $pwrp_exe
sprintf( src_fname, load_cNameAppl, "$pwrp_cnf", nodename, bussid);
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
if ( evenSts()) {
char dir[80];
strcpy( dir, "$pwrp_cnf/");
sprintf( src_fname, load_cNameAppl, dir, nodename, bussid);
dcli_translate_filename( src_fname, src_fname);
m_sts = dcli_file_time( src_fname, &src_time);
}
if ( oddSts()) {
sprintf( dest_fname, load_cNameAppl, "$pwrp_exe/", nodename, bussid);
dcli_translate_filename( dest_fname, dest_fname);
m_sts = dcli_file_time( dest_fname, &dest_time);
if ( opt.force || evenSts() || src_time.tv_sec > dest_time.tv_sec) {
sprintf( cmd, "cp %s %s", src_fname, dest_fname);
system( cmd);
sprintf( cmd, "Build: %s -> $pwrp_exe", src_fname);
MsgWindow::message( 'I', cmd, msgw_ePop_No);
m_sts = PWRB__SUCCESS;
}
else
m_sts = PWRB__NOBUILT;
}
else
m_sts = PWRB__NOBUILT;
if ( sumsts == PWRB__NOBUILT && m_sts != PWRB__NOBUILT)
sumsts = m_sts;
}
if ( sumsts != PWRB__NOBUILT) {
char msg[200]; char msg[200];
sprintf( msg, "Build: Node %s", nodename); sprintf( msg, "Build: Node %s", nodename);
MsgWindow::message('I', msg, msgw_ePop_No); MsgWindow::message('I', msg, msgw_ePop_No);
} }
m_sts = sumsts;
} }
void wb_build::volume() void wb_build::volume()
......
...@@ -90,10 +90,10 @@ extern "C" { ...@@ -90,10 +90,10 @@ extern "C" {
/* Filename of process includefile */ /* Filename of process includefile */
#define PROCINC "rt_plc_proc.h" #define PROCINC "rt_plc_proc.h"
#define GCDIR "pwrp_root:[common.tmp]" #define GCDIR "$pwrp_tmp/"
#define GCEXT ".gc" #define GCEXT ".gc"
#define DATDIR "pwrp_root:[common.load]" #define DATDIR "$pwrp_load/"
#define DATEXT ".dat" #define DATEXT ".dat"
#define IS_LYNX(os) ((os & pwr_mOpSys_PPC_LYNX) \ #define IS_LYNX(os) ((os & pwr_mOpSys_PPC_LYNX) \
......
...@@ -2107,24 +2107,24 @@ pwr_tStatus lfu_SaveDirectoryVolume( ...@@ -2107,24 +2107,24 @@ pwr_tStatus lfu_SaveDirectoryVolume(
fprintf( file, "appl %s W $pwrp_src/%s/pwr_user2.dat:$pwra_db/pwr_user2.dat $pwra_db/pwr_user2.dat\n", fprintf( file, "appl %s W $pwrp_src/%s/pwr_user2.dat:$pwra_db/pwr_user2.dat $pwra_db/pwr_user2.dat\n",
nodename_ptr, nodename_ptr); nodename_ptr, nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_ApplFile) if ( *components_ptr & pwr_mDistrComponentMask_ApplFile)
fprintf( file, "appl %s W "load_cNameAppl"\n", fprintf( file, "appl %s W "load_cNameAppl" $pwrp_load/\n",
nodename_ptr, "$pwrp_load/", nodename_ptr, *bus_number_ptr); nodename_ptr, "$pwrp_cnf/", nodename_ptr, *bus_number_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_PwrpAliasFile) if ( *components_ptr & pwr_mDistrComponentMask_PwrpAliasFile)
fprintf( file, "appl %s W $pwrp_load/pwrp_alias.dat $pwrp_load/pwrp_alias.dat\n", fprintf( file, "appl %s W $pwrp_cnf/%s/pwrp_alias.dat:$pwrp_cnf/pwrp_alias.dat $pwrp_load/pwrp_alias.dat\n",
nodename_ptr); nodename_ptr, nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_IncludeFiles) if ( *components_ptr & pwr_mDistrComponentMask_IncludeFiles)
fprintf( file, "appl %s W $pwrp_inc/*.h\n", nodename_ptr); fprintf( file, "appl %s W $pwrp_inc/*.h\n", nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_GraphFiles) if ( *components_ptr & pwr_mDistrComponentMask_GraphFiles)
fprintf( file, "appl %s W $pwrp_exe/*.pwg\n", nodename_ptr); fprintf( file, "appl %s W $pwrp_exe/*.pwg\n", nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_XttHelpFile) if ( *components_ptr & pwr_mDistrComponentMask_XttHelpFile)
fprintf( file, "appl %s W $pwrp_src/%s/xtt_help.dat:$pwrp_exe/xtt_help.dat $pwrp_exe/xtt_help.dat\n", fprintf( file, "appl %s W $pwrp_cnf/%s/xtt_help.dat:$pwrp_cnf/xtt_help.dat $pwrp_exe/xtt_help.dat\n",
nodename_ptr, nodename_ptr); nodename_ptr, nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_XttResourceFile) if ( *components_ptr & pwr_mDistrComponentMask_XttResourceFile)
fprintf( file, "appl %s W $pwrp_src/%s/Rt_xtt:$pwrp_pop/Rt_xtt /home/b55/Rt_xtt\n", fprintf( file, "appl %s W $pwrp_cnf/%s/b55/Rt_xtt:$pwrp_cnf/%s/Rt_xtt:$pwrp_cnf/Rt_xtt /home/b55/Rt_xtt\n",
nodename_ptr, nodename_ptr); nodename_ptr, nodename_ptr, nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_XttSetupFile) if ( *components_ptr & pwr_mDistrComponentMask_XttSetupFile)
fprintf( file, "appl %s W $pwrp_src/%s/xtt_setup.rtt_com:$pwrp_pop/xtt_setup.rtt_com /home/b55/xtt_setup.rtt_com\n", fprintf( file, "appl %s W $pwrp_cnf/%s/b55/xtt_setup.rtt_com:$pwrp_cnf/%s/xtt_setup.rtt_com:$pwrp_cnf/xtt_setup.rtt_com /home/b55/xtt_setup.rtt_com\n",
nodename_ptr, nodename_ptr); nodename_ptr, nodename_ptr, nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_FlowFiles) if ( *components_ptr & pwr_mDistrComponentMask_FlowFiles)
fprintf( file, "appl %s W $pwrp_load/*.flw\n", nodename_ptr); fprintf( file, "appl %s W $pwrp_load/*.flw\n", nodename_ptr);
if ( *components_ptr & pwr_mDistrComponentMask_RHostsFile) if ( *components_ptr & pwr_mDistrComponentMask_RHostsFile)
...@@ -2724,7 +2724,7 @@ pwr_tStatus lfu_check_appl_file( char *nodename, int bus_number) ...@@ -2724,7 +2724,7 @@ pwr_tStatus lfu_check_appl_file( char *nodename, int bus_number)
pwr_tFileName fname; pwr_tFileName fname;
pwr_tTime t; pwr_tTime t;
sprintf( fname, load_cNameAppl, load_cDirectory, nodename, bus_number); sprintf( fname, load_cNameAppl, "$pwrp_cnf/", nodename, bus_number);
dcli_translate_filename( fname, fname); dcli_translate_filename( fname, fname);
if ( ODD(dcli_file_time( fname, &t))) if ( ODD(dcli_file_time( fname, &t)))
......
...@@ -179,7 +179,7 @@ void wb_pkg::readConfig() ...@@ -179,7 +179,7 @@ void wb_pkg::readConfig()
if ( plcname[0] != 0) { if ( plcname[0] != 0) {
char dir[80]; char dir[80];
sprintf( dir, "$pwrp_root/%s/exe/", cdh_OpSysToStr( n.opsys())); sprintf( dir, "$pwrp_root/bld/%s/exe/", cdh_OpSysToStr( n.opsys()));
sprintf( fname, "%s%s", dir, plcname); sprintf( fname, "%s%s", dir, plcname);
pkg_pattern pplc( fname, "", 'W'); pkg_pattern pplc( fname, "", 'W');
n.push_back( pplc); n.push_back( pplc);
...@@ -229,12 +229,13 @@ void wb_pkg::readConfig() ...@@ -229,12 +229,13 @@ void wb_pkg::readConfig()
n.push_back( rttcrrcode); n.push_back( rttcrrcode);
// RttPlc-file // RttPlc-file
#if 0
strcpy( dir, "$pwrp_load/"); strcpy( dir, "$pwrp_load/");
sprintf( fname, "%s" load_cNameRttPlc, sprintf( fname, "%s" load_cNameRttPlc,
dir, vid.v.vid_3, vid.v.vid_2, vid.v.vid_1, vid.v.vid_0); dir, vid.v.vid_3, vid.v.vid_2, vid.v.vid_1, vid.v.vid_0);
pkg_pattern rttplc( fname); pkg_pattern rttplc( fname);
n.push_back( rttplc); n.push_back( rttplc);
#endif
} }
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment