X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2Fenvironment.py;h=62943389339565b15113bf4f9259be26f1db232f;hb=b290bea918ae017dde95805abe898e5e6bd08f69;hp=5c4c11cd653dcf03e55c7b4899f8cd6e586b2cd3;hpb=f0c1fa827be3842a11b6b9520b2bef2542780e58;p=tools%2Fsat.git diff --git a/src/environment.py b/src/environment.py index 5c4c11c..6294338 100644 --- a/src/environment.py +++ b/src/environment.py @@ -246,6 +246,15 @@ class SalomeEnviron: sorted_nodes) self.sorted_product_list=sorted_nodes + # store the list of compile time products + # they should be added in build env + compile_time_products=[] + for (pname,pinfo) in all_products_infos: + if src.product.product_is_compile_time(pinfo) or\ + src.product.product_is_compile_and_runtime(pinfo) : + compile_time_products.append(pname) + self.compile_time_products=compile_time_products + def append(self, key, value, sep=os.pathsep): """\ @@ -380,7 +389,11 @@ class SalomeEnviron: """ if self.for_package: - self.set("PRODUCT_ROOT_DIR", "out_dir_Path") + if src.architecture.is_windows(): + self.set("PRODUCT_ROOT_DIR", "%out_dir_Path%") + else: + self.set("PRODUCT_ROOT_DIR", "out_dir_Path") + else: self.cfg.APPLICATION.environ.PRODUCT_ROOT_DIR = src.pyconf.Reference(self.cfg, src.pyconf.DOLLAR, "workdir") @@ -604,10 +617,14 @@ class SalomeEnviron: if self.for_package: + prod_base_name=os.path.basename(pi.install_dir) + if prod_base_name.startswith("config"): + # case of a products installed in base. We remove "config-i" + prod_base_name=os.path.basename(os.path.dirname(pi.install_dir)) pi.install_dir = os.path.join( "out_dir_Path", self.for_package, - os.path.basename(pi.install_dir)) + prod_base_name) if not self.silent: logger.write(_("Setting environment for %s\n") % product, 4) @@ -746,10 +763,19 @@ class SalomeEnviron: self.set_a_product("Python", logger) self.set_python_libdirs() + # for a build environment, add compile time products (like cmake) + if self.forBuild : + for product in self.compile_time_products: + if product == "Python": + continue + self.set_a_product(product, logger) + # The loop on the products for product in self.sorted_product_list: if product == "Python": continue + if self.forBuild and product in self.compile_time_products: + continue self.set_a_product(product, logger) def set_full_environ(self, logger, env_info): @@ -776,10 +802,19 @@ class SalomeEnviron: self.set_a_product("Python", logger) self.set_python_libdirs() + # for a build environment, add compile time products (like cmake) + if self.forBuild : + for product in self.compile_time_products: + if product == "Python": + continue + self.set_a_product(product, logger) + # set products for product in sorted_product_list: if product == "Python": continue + if self.forBuild and product in self.compile_time_products: + continue self.set_a_product(product, logger) class FileEnvWriter: