Commit d17f3e3b authored by claes's avatar claes

Module separation work

parent 60379bea
include $(pwre_dir_symbols) include $(pwre_dir_symbols)
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/$(type_name)_generic.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/$(type_name)_generic.mk
ifeq ($($(type_name)_generic_mk),) ifeq ($($(type_name)_generic_mk),)
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(type_name)_generic.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(type_name)_generic.mk
endif endif
ifeq ($($(type_name)_generic_mk),) ifeq ($($(type_name)_generic_mk),)
include $(pwre_sroot)/tools/bld/src/$(type_name)_generic.mk include $(pwre_kroot)/tools/bld/src/$(type_name)_generic.mk
endif endif
-include ../../special.mk -include ../../special.mk
......
...@@ -2,10 +2,11 @@ ifndef link_rule_mk ...@@ -2,10 +2,11 @@ ifndef link_rule_mk
link_rule_mk := 1 link_rule_mk := 1
link = g++ -shared -DHW_X86 -DOS_LINUX \ link = g++ -shared -DHW_X86 -DOS_LINUX \
-L${pwr_elib} \
-L${pwr_lib} \ -L${pwr_lib} \
-L/usr/X11R6/lib \ -L/usr/X11R6/lib \
${pwre_broot}/${pwre_target}/bld/lib/co/*.o \ ${pwre_broot}/${pwre_target}/bld/lib/co/*.o \
$(rt_msg_objs) \ $(rt_msg_eobjs) \
${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_qcom.o \ ${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_qcom.o \
${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_op.o \ ${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_op.o \
${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_wb.o \ ${pwre_broot}/${pwre_target}/bld/lib/msg_dummy/msg_dummy_wb.o \
......
...@@ -51,7 +51,7 @@ $(load_dir)/nmps.dbs : ...@@ -51,7 +51,7 @@ $(load_dir)/nmps.dbs :
$(inc_dir)/pwr_nmpsclasses.h : $(inc_dir)/pwr_nmpsclasses.h :
@ echo "Generating struct files for nmps classes..." @ echo "Generating struct files for nmps classes..."
@ co_convert -s -d $(inc_dir) "$(pwre_sroot)/wbl/nmps/src/nmps_*.wb_load" @ co_convert -so -d $(inc_dir) "$(pwre_sroot)/wbl/nmps/src/nmps_*.wb_load"
$(inc_dir)/pwr_nmpsclasses.hpp : $(inc_dir)/pwr_nmpsclasses.hpp :
@ echo "Generating hpp files for nmps classes..." @ echo "Generating hpp files for nmps classes..."
......
...@@ -67,7 +67,7 @@ all : init copy lib ...@@ -67,7 +67,7 @@ all : init copy lib
init : init :
copy : $(exe_dir)/xtt_help.dat $(exe_dir)/sv_se/pwrb_xtthelp.dat $(exe_dir)/pwr_logga.gif $(export_gif) $(export_gifdoc) $(export_wav) copy : $(load_dir)/pwr_volumelist.dat $(exe_dir)/xtt_help.dat $(exe_dir)/sv_se/pwrb_xtthelp.dat $(exe_dir)/pwr_logga.gif $(export_gif) $(export_gifdoc) $(export_wav)
lib : $(export_obj) lib : $(export_obj)
...@@ -83,6 +83,10 @@ $(exe_dir)/%.wav : ../../%.wav ...@@ -83,6 +83,10 @@ $(exe_dir)/%.wav : ../../%.wav
@ $(log_h_h) @ $(log_h_h)
@ $(cp) $(cpflags) $(source) $(target) @ $(cp) $(cpflags) $(source) $(target)
$(load_dir)/pwr_volumelist.dat : ../../pwr_volumelist.dat
@ echo "Copying pwr_volumelist.dat"
@ $(cp) $(cpflags) $(source) $(target)
$(exe_dir)/xtt_help.dat : xtt_help.dat $(exe_dir)/xtt_help.dat : xtt_help.dat
@ echo "Copying xtt_help.dat" @ echo "Copying xtt_help.dat"
@ $(cp) $(cpflags) $(source) $(target) @ $(cp) $(cpflags) $(source) $(target)
......
...@@ -9,18 +9,18 @@ ifndef exe_generic_mk ...@@ -9,18 +9,18 @@ ifndef exe_generic_mk
exe_generic_mk := 1 exe_generic_mk := 1
ifndef variables_mk ifndef variables_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk
endif endif
ifndef variables_mk ifndef variables_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/variables.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/variables.mk
endif endif
ifndef rules_mk ifndef rules_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk
endif endif
ifndef rules_mk ifndef rules_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/rules.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/rules.mk
endif endif
...@@ -33,7 +33,7 @@ ifndef link_rule_mk ...@@ -33,7 +33,7 @@ ifndef link_rule_mk
-include $(link_rule) -include $(link_rule)
endif endif
ifndef link_rule_mk ifndef link_rule_mk
link_rule := $(pwre_sroot)/tools/bld/src/$(os_name)/link_rule_generic.mk link_rule := $(pwre_kroot)/tools/bld/src/$(os_name)/link_rule_generic.mk
include $(link_rule) include $(link_rule)
endif endif
......
...@@ -25,6 +25,8 @@ load_dir := $(module_root)/load ...@@ -25,6 +25,8 @@ load_dir := $(module_root)/load
doc_dir := $(release_root)/exp/doc doc_dir := $(release_root)/exp/doc
elib_dir := $(release_root)/exp/lib elib_dir := $(release_root)/exp/lib
einc_dir := $(release_root)/exp/inc einc_dir := $(release_root)/exp/inc
eobj_dir := $(release_root)/exp/obj
eexe_dir := $(release_root)/exp/exe
bld_dir := $(release_root)/bld/$(type_name)/$(comp_name) bld_dir := $(release_root)/bld/$(type_name)/$(comp_name)
tmp_dir := $(release_root)/tmp tmp_dir := $(release_root)/tmp
...@@ -85,6 +87,9 @@ clibobj = -c -o $(libobj) ...@@ -85,6 +87,9 @@ clibobj = -c -o $(libobj)
rt_msg_objs := $(obj_dir)/pwr_msg_co.o $(obj_dir)/pwr_msg_rt.o rt_msg_objs := $(obj_dir)/pwr_msg_co.o $(obj_dir)/pwr_msg_rt.o
rs_msg_objs := $(obj_dir)/pwr_msg_rs.o rs_msg_objs := $(obj_dir)/pwr_msg_rs.o
wb_msg_objs := $(obj_dir)/pwr_msg_wb.o $(obj_dir)/pwr_msg_ge.o $(obj_dir)/pwr_msg_flow.o wb_msg_objs := $(obj_dir)/pwr_msg_wb.o $(obj_dir)/pwr_msg_ge.o $(obj_dir)/pwr_msg_flow.o
rt_msg_eobjs := $(eobj_dir)/pwr_msg_co.o $(eobj_dir)/pwr_msg_rt.o
rs_msg_eobjs := $(eobj_dir)/pwr_msg_rs.o
wb_msg_eobjs := $(eobj_dir)/pwr_msg_wb.o $(eobj_dir)/pwr_msg_ge.o $(eobj_dir)/pwr_msg_flow.o
log_done = log_done =
csetos := -DOS_LINUX=1 -DOS=linux -DHW_X86=1 -DHW=x86 csetos := -DOS_LINUX=1 -DOS=linux -DHW_X86=1 -DHW=x86
...@@ -102,7 +107,7 @@ ld := gcc ...@@ -102,7 +107,7 @@ ld := gcc
cxx := g++ cxx := g++
ldxx := g++ ldxx := g++
lex := flex lex := flex
msg2cmsg := $(exe_dir)/tools_msg2cmsg msg2cmsg := $(eexe_dir)/tools_msg2cmsg
javac := javac javac := javac
#list = $(to-vms $(lis_dir)/$(sname)$(lis_ext)) #list = $(to-vms $(lis_dir)/$(sname)$(lis_ext))
...@@ -113,7 +118,7 @@ ifeq ($(pwre_btype),rls) ...@@ -113,7 +118,7 @@ ifeq ($(pwre_btype),rls)
cflags := -c -O3 -D_GNU_SOURCE -DPWR_NDEBUG -D_REENTRANT cflags := -c -O3 -D_GNU_SOURCE -DPWR_NDEBUG -D_REENTRANT
cxxflags := $(cflags) cxxflags := $(cflags)
linkflags := -O3 -L/usr/local/lib -L$(lib_dir) -lm -lrt linkflags := -O3 -L/usr/local/lib -L$(lib_dir) -lm -lrt
elinkflags := -O3 -L/usr/local/lib -L$(elib_dir) -L$(libdir) -lm -lrt elinkflags := -O3 -L/usr/local/lib -L$(libdir) -L$(elib_dir) -lm -lrt
clis = /lis=$(list) clis = /lis=$(list)
dolist = /lis=$(list) dolist = /lis=$(list)
domap = -Xlinker -Map -Xlinker $(map) domap = -Xlinker -Map -Xlinker $(map)
...@@ -122,7 +127,7 @@ else ...@@ -122,7 +127,7 @@ else
cxxflags := $(cflags) -Wno-deprecated cxxflags := $(cflags) -Wno-deprecated
mmflags := -Wno-deprecated mmflags := -Wno-deprecated
linkflags := -g -L/usr/local/lib -L$(lib_dir) -lrt linkflags := -g -L/usr/local/lib -L$(lib_dir) -lrt
elinkflags := -g -L/usr/local/lib -L$(elib_dir) -L$(lib_dir) -lrt elinkflags := -g -L/usr/local/lib -L$(lib_dir) -L$(elib_dir) -lrt
dolist = /lis=$(list) dolist = /lis=$(list)
clis := clis :=
domap = -Xlinker -Map -Xlinker $(map) domap = -Xlinker -Map -Xlinker $(map)
......
...@@ -10,18 +10,18 @@ jpwr_generic_mk := 1 ...@@ -10,18 +10,18 @@ jpwr_generic_mk := 1
ifndef variables_mk ifndef variables_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk
endif endif
ifndef variables_mk ifndef variables_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/variables.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/variables.mk
endif endif
ifndef rules_mk ifndef rules_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk
endif endif
ifndef rules_mk ifndef rules_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/rules.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/rules.mk
endif endif
......
ifndef link_rule_mk ifndef link_rule_mk
link_rule_mk := 1 link_rule_mk := 1
link = $(ld) $(linkflags) $(domap) -o $(export_exe) \ link = $(ld) $(elinkflags) $(domap) -o $(export_exe) \
$(export_obj) $(objects) $(rt_msg_objs) \ $(export_obj) $(objects) $(rt_msg_objs) \
-lpwr_rt -lpwr_co -lpwr_msg_dummy -lpthread -lm -lrpcsvc -lpwr_rt -lpwr_co -lpwr_msg_dummy -lpthread -lm -lrpcsvc
......
...@@ -9,18 +9,18 @@ ifndef msg_generic_mk ...@@ -9,18 +9,18 @@ ifndef msg_generic_mk
msg_generic_mk := 1 msg_generic_mk := 1
ifndef variables_mk ifndef variables_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/variables.mk
endif endif
ifndef variables_mk ifndef variables_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/variables.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/variables.mk
endif endif
ifndef rules_mk ifndef rules_mk
-include $(pwre_sroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk -include $(pwre_kroot)/tools/bld/src/$(os_name)/$(hw_name)/rules.mk
endif endif
ifndef rules_mk ifndef rules_mk
include $(pwre_sroot)/tools/bld/src/$(os_name)/rules.mk include $(pwre_kroot)/tools/bld/src/$(os_name)/rules.mk
endif endif
......
...@@ -81,7 +81,7 @@ $(load_dir)/%.dbs : ../../%.wb_load ...@@ -81,7 +81,7 @@ $(load_dir)/%.dbs : ../../%.wb_load
$(inc_dir)/pwr_%classes.h : ../../%.wb_load $(inc_dir)/pwr_%classes.h : ../../%.wb_load
@ echo "Generating struct files for $(source) classes..." @ echo "Generating struct files for $(source) classes..."
@ co_convert -s -d $(inc_dir) "$(source)" @ co_convert -so -d $(inc_dir) "$(source)"
$(inc_dir)/pwr_%classes.hpp : ../../%.wb_load $(inc_dir)/pwr_%classes.hpp : ../../%.wb_load
@ echo "Generating hpp files for $(source) classes..." @ echo "Generating hpp files for $(source) classes..."
......
...@@ -171,53 +171,95 @@ sub build () # args: branch, subbranch, phase ...@@ -171,53 +171,95 @@ sub build () # args: branch, subbranch, phase
# #
sub build_all_modules () sub build_all_modules ()
{ {
_module("kernel");
build_all("copy");
merge();
_module("wb");
build_all("copy");
merge();
_module("kernel"); _module("kernel");
build_all("lib"); build_all("lib");
merge(); merge();
_module("ssabox"); _module("wb");
build_all("lib"); build_all("lib");
merge(); merge();
_module("nmps");
build_all("copy", "lib");
merge();
_module("tlog");
build_all("copy", "lib");
merge();
_module("remote");
build_all("copy");
merge();
_module("bcomp");
build_all("copy");
merge();
_module("java");
build_all("copy");
merge();
_module("ssabox");
build_all("copy");
merge();
_module("othermanu"); _module("othermanu");
build_all("lib"); build_all("copy");
merge(); merge();
_module("abb"); _module("abb");
build_all("lib"); build_all("copy");
merge(); merge();
_module("siemens"); _module("siemens");
build_all("lib"); build_all("copy");
merge(); merge();
_module("inor"); _module("inor");
build_all("lib"); build_all("copy");
merge(); merge();
_module("klocknermoeller"); _module("klocknermoeller");
build_all("lib"); build_all("copy");
merge(); merge();
_module("telemecanique"); _module("telemecanique");
build_all("lib"); build_all("copy");
merge();
_module("wb");
build_all("exe");
merge(); merge();
_module("kernel"); _module("kernel");
build_all("","exe"); build_all("exe");
merge();
_module("nmps");
build_all("lib", "exe");
merge();
_module("tlog");
build_all("lib", "exe");
merge();
_module("remote");
build_all("lib", "exe");
merge();
_module("bcomp");
build_all("lib", "exe");
merge();
_module("java");
build_all("lib", "exe");
merge(); merge();
_module("ssabox"); _module("ssabox");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("othermanu"); _module("othermanu");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("abb"); _module("abb");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("siemens"); _module("siemens");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("inor"); _module("inor");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("klocknermoeller"); _module("klocknermoeller");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
_module("telemecanique"); _module("telemecanique");
build_all("","exe"); build_all("lib", "exe");
merge(); merge();
# my($exe_dir) = $ENV{"pwr_exe"}; # my($exe_dir) = $ENV{"pwr_exe"};
...@@ -233,6 +275,18 @@ sub create_all_modules () ...@@ -233,6 +275,18 @@ sub create_all_modules ()
{ {
_module("kernel"); _module("kernel");
create(); create();
_module("wb");
create();
_module("nmps");
create();
_module("tlog");
create();
_module("remote");
create();
_module("java");
create();
_module("bcomp");
create();
_module("ssabox"); _module("ssabox");
create(); create();
_module("othermanu"); _module("othermanu");
...@@ -254,8 +308,24 @@ sub create_all_modules () ...@@ -254,8 +308,24 @@ sub create_all_modules ()
# #
sub build_all () sub build_all ()
{ {
my($to) = $_[0]; $copy = 0;
my($from) = $_[1]; $lib = 0;
$exe = 0;
if ( $_[0] eq "copy" || $_[1] eq "copy" || $_[2] eq "copy") {
$copy = 1;
}
if ( $_[0] eq "lib" || $_[1] eq "lib" || $_[2] eq "lib") {
$lib = 1;
}
if ( $_[0] eq "exe" || $_[1] eq "exe" || $_[2] eq "exe") {
$exe = 1;
}
if ( $_[0] eq "") {
$copy = 1;
$lib = 1;
$exe = 1;
}
if (!defined($ENV{"pwre_env"})) { if (!defined($ENV{"pwre_env"})) {
print("++ Environment is not initialized!\n"); print("++ Environment is not initialized!\n");
...@@ -278,87 +348,92 @@ sub build_all () ...@@ -278,87 +348,92 @@ sub build_all ()
if ( $module eq "kernel") { if ( $module eq "kernel") {
if ( $from eq "") { if ( $copy == 1) {
_build("exp", "inc", "all"); _build("exp", "inc", "all");
_build("exp", "com", "all"); _build("exp", "com", "all");
_build("tools/exe", "*", "all"); _build("tools/exe", "*", "all");
merge("exe/tools_cmsg2c");
merge("exe/tools_msg2cmsg");
_build("msg", "*", "all"); _build("msg", "*", "all");
_build("lib", "rt", "init copy"); _build("lib", "rt", "init copy");
_build("lib", "wb", "init copy"); # _build("lib", "wb", "init copy");
_build("lib", "co", "init copy"); _build("lib", "co", "init copy");
_build("lib", "dtt", "init copy"); _build("lib", "dtt", "init copy");
_build("exp", "wb", "init copy"); # _build("exp", "wb", "init copy");
_build("lib", "flow", "all"); _build("lib", "flow", "all");
_build("lib", "glow", "all"); _build("lib", "glow", "all");
_build("lib", "co", "all"); _build("lib", "co", "all");
_build("exe", "co*", "all"); _build("exe", "co*", "all");
_build("wbl", "pwrs", "copy"); _build("wbl", "pwrs", "copy");
_build("wbl", "pwrb", "copy"); _build("wbl", "pwrb", "copy");
_build("wbl", "nmps", "copy"); }
_build("wbl", "ssab", "copy");
_build("wbl", "tlog", "copy"); if ( $lib == 1) {
_build("wbl", "bcomp", "copy");
_build("lib", "ge", "all"); _build("lib", "ge", "all");
_build("lib", "wb", "all"); _module("nmps");
_build("wbl", "nmps", "init copy");
merge("inc/pwr_nmpsclasses.h");
_module("remote");
_build("wbl", "remote", "init copy");
merge("inc/pwr_remoteclasses.h");
_module("kernel");
_build("lib", "rt", "all"); _build("lib", "rt", "all");
_build("lib", "rs", "all");
_build("exp", "rt", "all"); _build("exp", "rt", "all");
_build("exp", "wb", "all"); # _build("exp", "wb", "all");
_build("lib", "msg_dummy", "all"); _build("lib", "msg_dummy", "all");
_build("exe", "wb_rtt", "all"); _build("exe", "wb_rtt", "all");
_build("lib", "dtt", "all"); _build("lib", "dtt", "all");
_build("exp", "rt", "all"); _build("exp", "rt", "all");
# _build("lib", "wb", "all");
} }
if ( $to eq "lib") { if ( $exe == 1) {
return; _build("exe", "rt*", "all");
# _build("exe", "wb*", "all");
_build("exp", "ge", "all");
_build("mmi", "*", "copy");
# _build("db", "wb", "init");
_build("wbl", "pwrs", "lib");
_build("wbl", "pwrb", "lib");
_build("wbl", "wb", "lib");
_build("wbl", "rt", "lib");
_build("doc", "web", "all");
_build("doc", "dweb", "all");
_build("doc", "orm", "all");
_build("doc", "prm", "all");
_build("doc", "man", "all");
_build("doc", "dox", "all");
_build("wbl", "pwrs", "exe");
_build("wbl", "pwrb", "exe");
}
}
elsif ( $module eq "java") {
if ( $lib == 1) {
_build("jpwr", "rt", "all");
_build("jpwr", "jop", "all");
_build("jpwr", "jopc", "all");
_build("jpwr", "beans", "all");
_build("jpwr", "rt_client", "all");
} }
_build("exe", "wb*", "all");
_build("exe", "rt*", "all");
_build("exe", "rs*", "all");
_build("exe", "jpwr*", "all");
_build("exp", "ge", "all");
_build("mmi", "*", "copy");
_build("jpwr", "rt", "all");
_build("jpwr", "jop", "all");
_build("jpwr", "jopc", "all");
_build("jpwr", "beans", "all");
_build("jpwr", "rt_client", "all");
# _build("db", "wb", "init");
_build("wbl", "pwrs", "lib");
_build("wbl", "pwrb", "lib");
_build("wbl", "nmps", "lib");
_build("wbl", "ssab", "lib");
_build("wbl", "tlog", "lib");
_build("wbl", "bcomp", "lib");
_build("wbl", "wb", "lib");
_build("wbl", "rt", "lib");
_build("doc", "web", "all");
_build("doc", "dweb", "all");
_build("doc", "orm", "all");
_build("doc", "prm", "all");
_build("doc", "man", "all");
_build("doc", "dox", "all");
_build("wbl", "pwrs", "exe");
_build("wbl", "pwrb", "exe");
_build("wbl", "nmps", "exe");
_build("wbl", "tlog", "exe");
_build("wbl", "ssab", "exe");
_build("wbl", "bcomp", "exe");
} }
else { else {
if ( $from eq "") { printf( "Copy: %d Lib: %d Exe: %d\n", $copy, $lib, $exe);
_build("wbl", "mcomp", "copy"); if ( $copy == 1) {
_build("mmi", "mcomp", "copy"); _build("wbl", "*", "copy");
_build("lib", "rt", "all"); _build("lib", "*", "init copy");
_build("lib", "wb", "all"); _build("exp", "*", "init copy");
_build("mmi", "*", "copy");
} }
if ( $to eq "lib") { if ( $lib == 1) {
return; _build("lib", "*", "lib");
_build("exp", "*", "lib");
}
if ( $exe == 1) {
_build("wbl", "*", "lib");
_build("wbl", "*", "exe");
_build("exe", "*", "all");
_build("doc", "dsh", "copy");
_build("doc", "orm", "copy");
} }
_build("wbl", "mcomp", "lib");
_build("wbl", "mcomp", "exe");
_build("doc", "dsh", "copy");
_build("doc", "orm", "copy");
} }
} }
...@@ -671,6 +746,8 @@ sub merge () ...@@ -671,6 +746,8 @@ sub merge ()
printf("++\n++ No build root is defined\n"); printf("++\n++ No build root is defined\n");
exit 1; exit 1;
} }
my($file) = $_[0];
# if ($module eq "kernel") { # if ($module eq "kernel") {
# printf("++\n++ No merge for module kernel needed\n"); # printf("++\n++ No merge for module kernel needed\n");
# exit 1; # exit 1;
...@@ -681,9 +758,9 @@ sub merge () ...@@ -681,9 +758,9 @@ sub merge ()
$mroot .= "/" . $ENV{"pwre_module"}; $mroot .= "/" . $ENV{"pwre_module"};
$eroot .= "/exp"; $eroot .= "/exp";
printf("--\n"); printf("--\n");
printf("-- Merge $module...\n"); printf("-- Merge %s %s\n", $module, $file);
my($cmd) = $ENV{pwre_bin} . "/pwre_merge.sh " . $mroot . " " . $eroot; my($cmd) = $ENV{pwre_bin} . "/pwre_merge.sh " . $mroot . " " . $eroot . " " . $file;
system("$cmd"); system("$cmd");
} }
......
...@@ -7,8 +7,14 @@ merge_dir_func() ...@@ -7,8 +7,14 @@ merge_dir_func()
{ {
local todir=$1 local todir=$1
local fromdir=$2 local fromdir=$2
local singlefile=$3
files=`eval ls $fromdir 2>/dev/null` if [ "$singlefile" != "" ]; then
files=$singlefile
todir=$todir/${singlefile%/*}
else
files=`eval ls $fromdir 2>/dev/null`
fi
if [ ! -z "$files" ]; then if [ ! -z "$files" ]; then
for file in $files; do for file in $files; do
...@@ -34,40 +40,52 @@ merge_dir_func() ...@@ -34,40 +40,52 @@ merge_dir_func()
fromroot=$1 fromroot=$1
toroot=$2 toroot=$2
file=$3
# Copy exe, load, obj and inc if [ "$file" != "" ]; then
merge_dir_func $toroot/exe $fromroot/exe # Merge only this file
merge_dir_func $toroot/exe/sv_se $fromroot/exe/sv_se merge_dir_func $toroot $fromroot $file
merge_dir_func $toroot/exe/en_us $fromroot/exe/en_us
merge_dir_func $toroot/exe/de_de $fromroot/exe/de_de else
merge_dir_func $toroot/inc $fromroot/inc # Copy exe, load, obj and inc
merge_dir_func $toroot/load $fromroot/load merge_dir_func $toroot/exe $fromroot/exe
merge_dir_func $toroot/obj $fromroot/obj merge_dir_func $toroot/exe/sv_se $fromroot/exe/sv_se
merge_dir_func $toroot/exe/en_us $fromroot/exe/en_us
merge_dir_func $toroot/exe/de_de $fromroot/exe/de_de
merge_dir_func $toroot/inc $fromroot/inc
merge_dir_func $toroot/load $fromroot/load
merge_dir_func $toroot/obj $fromroot/obj
# Merge archives # Merge archives
cd ${toroot%/*}/tmp cd ${toroot%/*}/tmp
libraries=`eval ls $fromroot/lib/* 2>/dev/null` libraries=`eval ls $fromroot/lib/* 2>/dev/null`
for lib in $libraries; do for lib in $libraries; do
arname=${lib##/*/} arname=${lib##/*/}
if [ $arname = "libpwr_rt.a" ] || [ $arname = "libpwr_wb.a" ]; then if [ $arname = "libpwr_rt.a" ] || [ $arname = "libpwr_wb.a" ]; then
echo "Merge $lib" echo "Merge $lib"
modules=`eval ar -tf $lib` modules=`eval ar -tf $lib`
ar -xf $lib ar -xf $lib
ar -rc $toroot/lib/$arname $modules ar -rc $toroot/lib/$arname $modules
rm $modules rm $modules
else else
echo "Copy $lib" echo "Copy $lib"
cp $lib $toroot/lib/ cp $lib $toroot/lib/
fi fi
done done
#Merge io methods
echo "-- Merge io methods"
co_merge io_base $pwr_einc/rt_io_\*.meth $pwr_elib/libpwr_rt.a
echo "-- Merge wb methods"
co_merge wb_base $pwr_einc/wb_\*.meth $pwr_elib/libpwr_wb.a
#Merge io methods
methodfile=$pwr_inc/rt_io_$pwre_module.meth
if [ -e $methodfile ]; then
echo "-- Merge io methods"
co_merge io_base $pwr_einc/rt_io_\*.meth $pwr_elib/libpwr_rt.a
fi
methodfile=$pwr_inc/wb_$pwre_module.meth
if [ -e $methodfile ]; then
echo "-- Merge wb methods"
co_merge wb_base $pwr_einc/wb_\*.meth $pwr_elib/libpwr_wb.a
fi
fi
...@@ -52,7 +52,7 @@ $(load_dir)/pwrb.dbs : ...@@ -52,7 +52,7 @@ $(load_dir)/pwrb.dbs :
$(inc_dir)/pwr_baseclasses.h : $(inc_dir)/pwr_baseclasses.h :
@ echo "Generating struct files for pwrb classes..." @ echo "Generating struct files for pwrb classes..."
@ co_convert -s -d $(inc_dir) "$(pwre_sroot)/wbl/pwrb/src/pwrb_*.wb_load" @ co_convert -so -d $(inc_dir) "$(pwre_sroot)/wbl/pwrb/src/pwrb_*.wb_load"
$(inc_dir)/pwr_baseclasses.hpp : $(inc_dir)/pwr_baseclasses.hpp :
@ echo "Generating hpp files for pwrb classes..." @ echo "Generating hpp files for pwrb classes..."
......
...@@ -50,7 +50,7 @@ $(load_dir)/pwrs.dbs : ...@@ -50,7 +50,7 @@ $(load_dir)/pwrs.dbs :
$(inc_dir)/pwr_systemclasses.h : $(inc_dir)/pwr_systemclasses.h :
@ echo "Generating struct files for pwrs classes..." @ echo "Generating struct files for pwrs classes..."
@ co_convert -s -d $(inc_dir) "$(pwre_sroot)/wbl/pwrs/src/pwrs_c_*.wb_load" @ co_convert -so -d $(inc_dir) "$(pwre_sroot)/wbl/pwrs/src/pwrs_c_*.wb_load"
$(inc_dir)/pwr_systemclasses.hpp : $(inc_dir)/pwr_systemclasses.hpp :
@ echo "Generating hpp files for pwrs classes..." @ echo "Generating hpp files for pwrs classes..."
......
...@@ -51,7 +51,7 @@ $(load_dir)/tlog.dbs : ...@@ -51,7 +51,7 @@ $(load_dir)/tlog.dbs :
$(inc_dir)/pwr_tlogclasses.h : $(inc_dir)/pwr_tlogclasses.h :
@ echo "Generating struct files for tlog classes..." @ echo "Generating struct files for tlog classes..."
@ co_convert -s -d $(inc_dir) "$(pwre_sroot)/wbl/tlog/src/tlog_c_*.wb_load" @ co_convert -so -d $(inc_dir) "$(pwre_sroot)/wbl/tlog/src/tlog_c_*.wb_load"
$(inc_dir)/pwr_tlogclasses.hpp : $(inc_dir)/pwr_tlogclasses.hpp :
@ echo "Generating hpp files for tlog classes..." @ echo "Generating hpp files for tlog classes..."
......
ifndef link_rule_mk ifndef link_rule_mk
link_rule_mk := 1 link_rule_mk := 1
link = $(ldxx) $(linkflags) $(domap) -o $(export_exe) \ link = $(ldxx) $(elinkflags) $(domap) -o $(export_exe) \
$(export_obj) $(objects) $(wb_msg_objs) $(rt_msg_objs) \ $(export_obj) $(objects) $(wb_msg_objs) $(rt_msg_objs) \
$(pwr_obj)/rt_io_user.o $(pwr_obj)/wb_provider.o -L/usr/X11R6/lib \ $(pwr_obj)/rt_io_user.o $(pwr_eobj)/wb_provider.o -L/usr/X11R6/lib \
-L/usr/local/BerkeleyDB.4.0/lib \ -L/usr/local/BerkeleyDB.4.0/lib \
-L/opt/gnome/lib \ -L/opt/gnome/lib \
-lpwr_ge -lpwr_wb -lpwr_flow -lpwr_glow -lpwr_rt -lpwr_co \ -lpwr_ge -lpwr_wb -lpwr_flow -lpwr_glow -lpwr_rt -lpwr_co \
......
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