| Summary: | Remove dependency of AC packaging on tptpdc | ||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | z_Archived | Reporter: | Kiryl Kazakevich <kiryl.kazakevich> | ||||||||||||||
| Component: | TPTP | Assignee: | Joshua Bowles <jbowles> | ||||||||||||||
| Status: | CLOSED FIXED | QA Contact: | |||||||||||||||
| Severity: | normal | ||||||||||||||||
| Priority: | P2 | CC: | chris.l.elford, ewchan, jcayne, jgwest, paulslau, pklicnik, vss, yi.y.zhang, yunan.he | ||||||||||||||
| Version: | unspecified | Keywords: | plan | ||||||||||||||
| Target Milestone: | --- | Flags: | jgwest:
review+
pklicnik: review? jcayne: review+ |
||||||||||||||
| Hardware: | PC | ||||||||||||||||
| OS: | All | ||||||||||||||||
| Whiteboard: | closed471 | ||||||||||||||||
| Bug Depends on: | |||||||||||||||||
| Bug Blocks: | 138602, 150717, 152795, 277765 | ||||||||||||||||
| Attachments: |
|
||||||||||||||||
|
Description
Kiryl Kazakevich
Hubert, I have just realized the depth of dependency. It is too deep to remove it quickly. We take a lot of content from tptpdc packages. It includes license files, lib/config.jar which is responsible to configure AC, Resources/ and security/ folders, all plugins/ folder stuff, RAC agents. We need to understand how to remove AC packaging dependency on tptpdc. And while we will do that, I think it is better to restore for a while uploading tptpdc. Done some work in context of the #184435 bug. AC does not take most part of RAC bin/ and lib/ folders. As soon I complete testing of prepared solution: 1) I will provide a patch which affects makefiles of AC 2) also I will ask somebody (possibly Samson) to copy several files from src-native to src-native-new in CVS repository. After that I see only one problem: where to obtain lib/config.jar. One of the possible solutions is that upstream build will continue to prepare something like tptpdc.zip with only config.jar. Joanna, I suggest to defer this defect beyond 4.4 (say 4.4.1). My arguments are: 1) there is not still a solution where downstream build can obtain lib/config.jar 2) existing partial solution requires synchronous patches to AC sources (namely makefiles) and to the releng.builder component, which can be enough risky in the present moment 3) the defect actually is not a bug and even not an enhancement, it is a kind of optimization of the building process Set target to 4.4.1. Hi Joel, In order to resolve this bug I need some help from IBM release engineering team. Background: AC (Agent Controller) building and packaging is done during "downstream" part of TPTP build. Input for downstream build is tptp.nativecode.zip and tptpdc.*.zip. Output is agntctrl.*.zip files. Input takes from and output goes to dev.eclipse.org. The purpose of this bug is to eliminate creation of tptpdc.*.zip packages as they are not part of TPTP distribution now. Question: There is some stuff in agntctrl.*.zip packages which downstream build can take only from tptpdc.*.zip packages. It includes: 1) epl-v10.html , notice.html 2) several Eclipse Platform and TPTP plug-ins 3) swt.jar and SWT licenses files 4) AC config.jar file Is it possible for TPTP build upstream part to create a zip file (like tptp.nativecode.zip) with this stuff and uploading it to dev.eclipse.org, so downstream part can use it to complete AC packaging? Hi Kiryl, After reviewing the option of creating a zip file, it seems that a solution may be to download the necessary dependencies as part of your build. This will also help us with our limited quota on dev.eclipse.org and allow for changes to be made on the downstream side more easily. The components you requested can be obtained through the following methods: 1) Legal documents available from www.eclipse.org/legal (http://www.eclipse.org/org/documents/epl-v10.html, http://www.eclipse.org/legal/epl/notice.html) 2) Eclipse SDK platform url used in our build available in dependencies.txt on dev.eclipse.org, tptp plug-ins available from the build on dev.eclipse.org. 3) swt.jar available through the SWT package with a url available in the dependencies.txt, SWT license files available in the swt package 4) Could you please clarify which config.jar? It may already be available in an existing plug-in as part of our build. Thank you, Joel I am going to follow you suggestion. The config.jar is from the org.eclipse.tptp.platform.agentcontroller plug-in. Earlier this plug-in was not being included to TPTP distribution, but was built to produce the config.jar, which went to stand-alone RAC/AC packages. Now this plug-ins is in TPTP distribution as part of IAC (Integrated Agent Controller) implementation. So I can take the config.jar from this plug-in. Hi Joanna, My current estimation to complete the solution is Aug 29 because of complex testing. Thanks, Kiryl Testing has showed that there is still a problem with the org.eclipse.hyades.probekit plug-in of AC. One of its components (the ProbeAgentExtension library) can not be built without RAC SDK. I have no good solution right now. Possibly it is necessary to extend AC SDK to allow build old style agents with it. As this is a packaging issue, I think we should defer this defect to 4.5 Seva, can you comment on the dependencies between the RAC SDK and the probeAgentExtension? The new probekit agent (org.eclipse.tptp.platform.jvmti.runtime/src-native/src/ProbekitAgent) uses the old BCI engine to do the bytecode instrumentation. Only two files depend on BCI at the compile time: Makefile declares include paths, Instrument.cpp includes few headers. Note that the probekit agent doesn't link with the BCI engine library (BCIEngProbe) but loads it at runtime. Instrument.cpp uses only few types from the old BCI, so it's not hard to remove the compile time dependency, but you'll still have to build the BCI engine library and distribute it with the AC package. Hi Joanna, This bug is at risk to be completed in 4.5, as I have no good solution to build probkit without RAC (old AC) SDK. Thanks, Kiryl Deferral to future with PMC approval Mass update of P1 enhancements and defects targetted to future to P2. Created attachment 144239 [details] Allow PAE to be built as part of jvmti instead of tptpdc This is the first of a few patches that will remove the dependency on building tptpdc. This one changes the paths of include for the windows and linux so that the ProbeAgentExtension library can be built as part of the JVMTI native build. Due to shared dependency with bug #277765, do not commit till all patches are in for both. Created attachment 144245 [details]
Adds PAE to the JVMTI native build
Builds ProbeAgentExtension as part of The JVMTI build now. Packages the files in 2 files pae.zip and pae-only.zip which are used to package the PAE in the AC during the TPTP build. Also now creates jvmti-only.zip which is used during the TPTP build process to add jvmti native files to The AC and TPTP runtimes.
Created attachment 144303 [details]
Add packing steps to AC native build
This patch moves some resources (setconfig.sh generatekey.bat ect..) from the src-native folder to the src-native-new folder so that they can be removed from the tptpdc build and moved to the agntctrl. This removes AC's packing dependency on tptpdc for these files.
Paul, can you review the first patch (Allow PAE...) and John can you review the JVMTI and AC patches (Adds PAE... and Add packing...), for me. Please and Thank you. There is still at least one more patch to come. (In reply to comment #20) > Paul, can you review the first patch (Allow PAE...) > I believe you mean the other Paul (Paul K) :) Hi Josh, patch is good. I did Patch looks good Created attachment 144427 [details]
Releng changes
Changes the configuration scripts to work on IMB's machines and support changes to the JVMTI build by defining new variables.
Changes to build scripts and custom targets to remove the tptpdc builds and add agntctrl and JVMTI builds.
The add-dependencies.agntctrl.sh script is really a renamed add-dependencies.tptpdc.sh with a few added functions.
Joel can you review when you get a chance.
Created attachment 144463 [details]
Releng changes V2
adds the creation of tptpdc.all_plaforms.zip
Please update/add copyright statements to the shell scripts, make the sf files have a consistent order, and remove Temp_License_Home. Patch looks good! +1 Project approval for tptp 461. Created attachment 144478 [details]
Releng changes V3
Contains suggested/required changes.
Patches checked into HEAD. Resolving. As of TPTP 4.6.0, TPTP is in maintenance mode and focusing on improving quality by resolving relevant enhancements/defects and increasing test coverage through test creation, automation, Build Verification Tests (BVTs), and expanded run-time execution. As part of the TPTP Bugzilla housecleaning process (see http://wiki.eclipse.org/Bugzilla_Housecleaning_Processes), this enhancement/defect is verified/closed by the Project Lead since this enhancement/defect has been resolved and unverified for more than 1 year and considered to be fixed. If this enhancement/defect is still unresolved and reproducible in the latest TPTP release (http://www.eclipse.org/tptp/home/downloads/), please re-open. |