Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 182085

Summary: Remove dependency of AC packaging on tptpdc
Product: z_Archived Reporter: Kiryl Kazakevich <kiryl.kazakevich>
Component: TPTPAssignee: 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: unspecifiedKeywords: 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 Flags
Allow PAE to be built as part of jvmti instead of tptpdc
none
Adds PAE to the JVMTI native build
none
Add packing steps to AC native build
none
Releng changes
none
Releng changes V2
none
Releng changes V3 none

Description Kiryl Kazakevich CLA 2007-04-12 03:06:39 EDT
tptpdc packages with RAC is not built any more, but AC packaging process still depends on it. Need to remove this dependency.

Hubert, please assign this bug to me.
Comment 1 Kiryl Kazakevich CLA 2007-04-12 04:03:23 EDT
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.
Comment 2 Kiryl Kazakevich CLA 2007-05-04 05:02:23 EDT
Done some work in context of the #184435 bug. AC does not take  most part of RAC bin/ and lib/ folders.
Comment 3 Kiryl Kazakevich CLA 2007-05-24 06:54:10 EDT
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.
Comment 4 Kiryl Kazakevich CLA 2007-06-05 08:55:52 EDT
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
Comment 5 Kiryl Kazakevich CLA 2007-08-08 12:21:26 EDT
Set target to 4.4.1.
Comment 6 Kiryl Kazakevich CLA 2007-08-23 03:53:15 EDT
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?
Comment 7 Joel Cayne CLA 2007-08-23 13:28:57 EDT
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.
Comment 8 Kiryl Kazakevich CLA 2007-08-24 08:10:47 EDT
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.
Comment 9 Kiryl Kazakevich CLA 2007-08-27 09:30:48 EDT
Hi Joanna,

My current estimation to complete the solution is Aug 29 because of complex testing.

Thanks,
Kiryl
Comment 10 Kiryl Kazakevich CLA 2007-08-30 04:46:51 EDT
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.
Comment 11 jkubasta CLA 2007-08-30 09:42:44 EDT
As this is a packaging issue, I think we should defer this defect to 4.5
Comment 12 Joel Cayne CLA 2007-08-30 10:00:25 EDT
Seva, can you comment on the dependencies between the RAC SDK and the probeAgentExtension?
Comment 13 Vsevolod Sandomirskiy CLA 2007-08-30 11:23:30 EDT
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.



Comment 14 Kiryl Kazakevich CLA 2008-04-09 09:13:59 EDT
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
Comment 15 jkubasta CLA 2008-05-23 08:55:24 EDT
Deferral to future with PMC approval
Comment 16 Kathy Chan CLA 2009-02-23 13:40:38 EST
Mass update of P1 enhancements and defects targetted to future to P2.
Comment 17 Joshua Bowles CLA 2009-08-12 10:50:33 EDT
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.
Comment 18 Joshua Bowles CLA 2009-08-12 11:11:11 EDT
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.
Comment 19 Joshua Bowles CLA 2009-08-12 16:21:12 EDT
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.
Comment 20 Joshua Bowles CLA 2009-08-12 16:37:57 EDT
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.
Comment 21 Joel Cayne CLA 2009-08-12 19:21:44 EDT
(In reply to comment #20)
> Paul, can you review the first patch (Allow PAE...)
> 

I believe you mean the other Paul (Paul K) :)
Comment 22 Jonathan West CLA 2009-08-12 19:34:30 EDT
Hi Josh, patch is good.
Comment 23 Joshua Bowles CLA 2009-08-12 19:35:42 EDT
I did
Comment 24 Paul Klicnik CLA 2009-08-13 09:12:01 EDT
Patch looks good
Comment 25 Joshua Bowles CLA 2009-08-13 11:59:28 EDT
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.
Comment 26 Joshua Bowles CLA 2009-08-13 15:35:29 EDT
Created attachment 144463 [details]
Releng changes V2

adds the creation of tptpdc.all_plaforms.zip
Comment 27 Joel Cayne CLA 2009-08-13 16:29:14 EDT
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!
Comment 28 Eugene Chan CLA 2009-08-13 16:39:16 EDT
+1 Project approval for tptp 461.
Comment 29 Joshua Bowles CLA 2009-08-13 17:24:15 EDT
Created attachment 144478 [details]
Releng changes V3

Contains suggested/required changes.
Comment 30 Joel Cayne CLA 2009-08-13 17:42:41 EDT
Patches checked into HEAD. Resolving.
Comment 31 Kathy Chan CLA 2010-11-18 18:56:06 EST
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.