/* Copyright (c) Oracle Corporation 1996. All Rights Reserved */ /***************************************************************************** NAME forms60.vrf - V3 analysis/product configuration script for the Forms 6.0 package DESCRIPTION This script checks dependencies and environment settings for the installation of the Forms 6.0 package History: 04/26/2002 veyunni Fixed the path update code. ******************************************************************************/ { {doit = execute("%installer_home%%dir_separator%%operating_system%.vrf");} [ 'UNBOUND_VARIABLE: { required_version = product_version(instver_product); temp = explode(required_version, "."); required_version = implode(list(first(temp),first(rest(temp)), first(rest(rest(temp))), first(rest(rest(rest(temp))))), "."); signal('FAILURE, instantiate(nls("instver_too_early1", "The version of the Installer currently running is %%installer_version%%. The installation you have chosen requires version %%required_version%% or later. Please run version %%required_version%% or later in order to perform this installation."))); } ] /* This FAILURE will cause 3.0.x.x installer to exit gracefully. */ /**************** START MAIN LOGIC *****************/ if (doit) { /**************************************************************** Display the generic "Welcome to Oracle Developer" billboard if not already displayed, and if Developer release *****************************************************************/ if(exists("%installer_home%%dir_separator%d2bb_01.bmp")) { if(DEVELOPER2000_RELEASE) { if(not(DEV2K_BB01)) { DEV2K_BB01 = TRUE; ui_graphics("%installer_home%%dir_separator%d2bb_01.bmp"); } } } /****************************************************************/ /***************************** Set the VRF-INS script ratchet ******************************/ vrf_ratchet = "6.0.8.13.0"; main_product_version = "6.0.8.8.0"; /*************************** Check Installed Version ***************************/ if(registered(product_name(current_product))) { check_installed_version = registry_version(registration(product_name(current_product))); if(earlier_version(check_installed_version, main_product_version)) { information_dialog(instantiate(product_upgrade_required), instantiate(product_upgrade_contents), instantiate(product_upgrade_help)); refresh_map_file = FALSE; doit = FALSE; return(0); } } else { information_dialog(instantiate(main_product_required), instantiate(main_product_contents), instantiate(main_product_help)); refresh_map_file = FALSE; doit = FALSE; signal('FAILURE, instantiate(halt_installation)); } /************************************************ Create a label with the product name, and version *************************************************/ EXECUTE_SCRIPT = "CREATE_LABEL"; execute("%product_home%%dir_separator%d2kr2vrf.usr"); /************************************************/ /*********************** Create Dependencies List ************************/ /* dependency_list = list(w32tutil60, w32ssf60,w32formsl60); verify_dependency_list = list(w32ssf60, w32tutil60 ,w32oin60, w32gui60, RSF_PRODUCT, w32formsl60); install_dependency_list = list(w32formsl60); */ dependency_list = list(w32tutil60, w32formsl60, w32rsf80); /* added rsf for patch-6 */ verify_dependency_list = list(w32tutil60, w32gui60, w32formsl60, w32rsf80); /* added rsf for patch-6 */ install_dependency_list = list(w32formsl60); if(not(registered("w32oin60"))) { information_dialog(instantiate(oin_product_required), instantiate(oin_product_contents), instantiate(oin_product_help)); signal('FAILURE, instantiate(halt_installation)); } if(not(registered("w32ssf60"))) /* added newly */ { information_dialog(instantiate(ssf_product_required), instantiate(ssf_product_contents), instantiate(ssf_product_help)); signal('FAILURE, instantiate(halt_installation)); } /***********************/ /************************************************ Add path ORACLE_HOME/JDK/bin to the path variable *************************************************/ { /* PATH UPDATE BEGINS */ { if (os_name == "nt") old_path = translate("PATH","$",'STRINGSONLY); else /* os_name = "win95" */ old_path = windows_autoexec_get_value("PATH"); exploded_old_path = explode(old_path, implode_explode_delimiter,'STRINGSONLY); } ['default: { old_path = ""; exploded_old_path = list(""); continue(); } ] jdk_path = "%ORACLE_HOME%\jdk\bin"; pathify(jdk_path); /* 3. User has admin privileges? */ if (not(admin_user)) signal('path_update_warn); /* 4. Compose suggested new path: */ /* Add jdk_home only if not already in the path */ /* Now update the path with new_path */ {/* Begin update */ if (os_name == "nt") { tem_val_in_path = exploded_old_path; path_modification_not_required = FALSE; while(not(empty(tem_val_in_path))) { path_present = first(tem_val_in_path); tem_val_in_path = rest(tem_val_in_path); if(path_present == jdk_path) { path_modification_not_required = TRUE; } } if(not(path_modification_not_required)) { add(exploded_old_path, jdk_path); new_path = implode(exploded_old_path, implode_explode_delimiter); modify("PATH",new_path,"$"); } }/* if (os_name == "nt") */ else { { windows_autoexec_remove_fragment("PATH", jdk_path); } [ 'default: continue(); ] windows_autoexec_add_fragment("PATH", jdk_path); add(reboot, 'AUTOEXEC); } } ['STRING_TOO_LONG : signal('path_update_overflow); ] /* End update */ } [ 'path_update_warn: { path_update_warn = nls("path_update_warn", "In order for some Oracle products to function correctly, the system PATH variable needs to include %oracle_home%\bin. Please remember to modify your path accordingly."); add(remind_list, path_update_warn); } 'path_update_overflow: { max_binding_length = 127; path_update_overflow = nls("path_update_overflow", "The Oracle Installer cannot update the system path variable to %new_path% because it is too long. Please restrict your system path to %max_binding_length% characters and make sure %oracle_home%\bin is included in your path."); add(remind_list, path_update_overflow); } ] /* PATH UPDATE ENDS */ /********************************************************************** parent_in_control = TRUE ==> the complete product needs to be installed parent_in_control = FALSE ==> PARENT called by one of the components ***********************************************************************/ parent_in_control = TRUE; if(not(member(selected_products, current_product))) { child_products = all_child_products(current_product); while(not(empty(child_products))) { next_child = first(child_products); child_products = rest(child_products); if(member(products_for_installation, next_child)) /* PARENT called by one of the components, no need to add PARENT to the list of products to be installed */ parent_in_control = FALSE; } } /**********************************************************************/ /************************** Determine installation path ***************************/ install_variable = "FORMS60"; default_home = "%oracle_home%%dir_separator%FORMS60"; FORMS60 = execute("%product_home%%dir_separator%instloc.usr"); /**************************/ /***************************************************************** Calculate total size of files ******************************************************************/ total_sum = 0; /*********************************************** If PARENT is explicitly called for installation, verify all the component products ************************************************/ EXECUTE_SCRIPT = "VERIFY_COMPONENTS"; total_sum = total_sum + execute("%product_home%%dir_separator%d2kr2vrf.usr"); /***********************************************/ /****************** Verify Dependencies *******************/ EXECUTE_SCRIPT = "VERIFY_DEPENDENCIES"; total_sum = total_sum + execute("%product_home%%dir_separator%d2kr2vrf.usr"); /******************/ total_sum = total_sum + sum(deinst, reg, msg); return(total_sum); /******************************************/ } else { refresh_map_file = FALSE; return(0); } }