This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 36759 - Flexible build of NetBeans
Summary: Flexible build of NetBeans
Status: RESOLVED FIXED
Alias: None
Product: www
Classification: Unclassified
Component: Builds & Repositories (show other bugs)
Version: 3.x
Hardware: PC Linux
: P2 blocker (vote)
Assignee: Michal Zlamal
URL:
Keywords:
: 40812 (view as bug list)
Depends on:
Blocks:
 
Reported: 2003-10-22 15:39 UTC by Jaroslav Tulach
Modified: 2004-10-05 15:58 UTC (History)
3 users (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments
proposed patch (669.81 KB, patch)
2004-03-08 12:30 UTC, Michal Zlamal
Details | Diff
Revised patch (686.57 KB, patch)
2004-03-08 15:28 UTC, Michal Zlamal
Details | Diff
Commit log (23.92 KB, text/plain)
2004-03-09 10:18 UTC, Michal Zlamal
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2003-10-22 15:39:05 UTC
As suggested as part installation proposal we need
to polish layout of files and that would be the
best achieved by using the "flexible build layout" 

http://openide.netbeans.org/proposals/arch/installation.html#flexible-build

this issue has been created to track progress and
issue related to it.
Comment 1 Jaroslav Tulach 2003-10-22 15:40:08 UTC
Michal, can you please take over this issue and set target milestone
and add some description of when you expect this will be in ready state?
Comment 2 Jaroslav Tulach 2003-10-27 13:41:57 UTC
Can your group confirm acceptance of this issue and somehow choose a
target date?
Comment 3 Michal Zlamal 2003-10-27 14:04:30 UTC
I plan to have this done until end of November.
Comment 4 Michal Zlamal 2004-02-10 15:54:51 UTC
I created the branch name layers_36759, base for this branch is 
layers_36759_base and it was created from the 200402041900 dev build.
xtest module was branched separately at 2004/02/10 12:00 MET.
I also commited the build scripts for superslim configuration.
Comment 5 Jesse Glick 2004-02-15 20:24:13 UTC
FYI some changes I plan which will affect this stuff:

1. When the new build system is merged, apisupport will support a NB
module project type which will autogenerate most or all of a module's
build script. Of course if what it generates is mostly referring to
shared templates anyway, that is better.

2. Sometime soon (for D, I guess) I would like to remove autoload/ and
eager/ subdirs for modules, and force all module JARs to be named
consistently according to module code name base; there would then be
no reason to use properties to define locations of module JARs, since
e.g. java.jar would become modules/org-netbeans-modules-java.jar and
not be allowed to move.
Comment 6 Michal Zlamal 2004-03-08 10:46:57 UTC
*** Issue 40812 has been marked as a duplicate of this issue. ***
Comment 7 Michal Zlamal 2004-03-08 12:27:39 UTC
I'll attach the diff against trunk. The diff contains change of all 
build scripts for modules in stable distribution, I'm working on the 
rest of modules - stable-with-apisupport and bloated module config are 
now priority.
I'm planning to commit this patch at Tuesday March 9 morning GMT.
Commit validation are passes without any problem.
Comment 8 Michal Zlamal 2004-03-08 12:30:06 UTC
Created attachment 13867 [details]
proposed patch
Comment 9 Jesse Glick 2004-03-08 12:38:42 UTC
Recheck beans/build.xml. "{jdkhome}/lib/tools.jar" is nonsense and is
probably not needed anyway; the *old* classpath entry was nonsense
too.  Please delete all the setup-jdkhome-* targets, they are probably
useless here.

(Even for modules which do need to have ${jdkhome} set, this should be
done in a central location. Possibly should have a property pointing
to ${tools.jar} directly.)
Comment 10 Jesse Glick 2004-03-08 12:47:48 UTC
I don't really like nbbuild/directories.properties; I think it makes
things more confusing, not clearer. Under what circumstances would I
want to change the value of ${nb.system.dir} to anything other than
"system"? Never, as far as I can imagine; the path is hardcoded in how
NetBeans works at runtime, and at any rate other parts of the build
script are going to be hardcoding it. So why make every build script
say e.g.

  <include name="${nb.system.dir}/ParserDB/foo.jcb"/>

when it could say

  <include name="system/ParserDB/foo.jcb"/>

which is easier to read and understand anyway?

Suggest that this file be deleted and all properties defined it
replaced in each build script with the literal value.

By the way your patch should be using diff -N so that newly added
files are included, not just modifications to existing files.
Comment 11 Michal Zlamal 2004-03-08 13:04:43 UTC
Hi Jesse, I didn't expect that you'll be taht fast, I'm just goinf 
thru the patch and fixing the typos and errors, I'll attach better 
patch later today. 
Ad directories.properties file:
It is there because of requrement to change standard directories. 
Instead of modules we'll probably use something like shared and so on.
..
Ad diff -N: I just found that the new files are missing in diff and 
I'll create new patch which will contain them.
Comment 12 Jaroslav Tulach 2004-03-08 13:15:21 UTC
directories.properties are a tool how to make it easy to rename
"system" to "config", as soon as we have it and as soon as I pass
review tomorrow I will start to work on a branch to modify these
properties and of course also the code inside NetBeans to work with
those values that will be agreed during the review.
Comment 13 Jesse Glick 2004-03-08 13:17:27 UTC
Re. directories.properties: ah, now I see the complex 'release'
targets using these property names. OK, never mind.
Comment 14 Michal Zlamal 2004-03-08 15:28:59 UTC
Created attachment 13872 [details]
Revised patch
Comment 15 Jaroslav Tulach 2004-03-08 16:51:48 UTC
I have made clean checkout, applied the patch (no conflicts or
heuristic) and executed

ant -f nbbuild/build.xml clean
ant -f nbbuild/build.xml real-clean
ant -f nbbuild/build.xml

I can confirm that everything succeeded without problems and seems to
have produced a build that works as I expect it to work.
Comment 16 Jaroslav Tulach 2004-03-08 17:44:06 UTC
I have to add that 

ant -f openide/test/build.xml
ant -f core/test/build.xml

succeeded as well.
Comment 17 Michal Zlamal 2004-03-09 10:17:32 UTC
I changed all stable modules - I'll attack commit log.
Comment 18 Michal Zlamal 2004-03-09 10:18:20 UTC
Created attachment 13890 [details]
Commit log
Comment 19 David Konecny 2004-03-15 14:16:42 UTC
The nbbuild/default.xml still has couple of "setup-jdkhome*" targets
which are useless I think. Were they copied from debugger module? If
yes then you can deleted them. On stavbicka branch I replaced them in
debugger modules with one new line on compilation classpath:

    ${java.home}/../lib/tools.jar

and that was all.
Comment 20 Michal Zlamal 2004-03-15 14:51:26 UTC
I think that's up to stavbicka... 
I fact last comment is not releaed to this issue any how...
Comment 21 Jesse Glick 2004-03-16 10:37:16 UTC
I think we still need something to find the dir that contains
tools.jar etc., since it may be different for e.g. Irix JDK (which has
no JRE subdir, apparently).

The current impl in default.xml can probably be simplified, though,
using <condition> etc.; this might be faster too.
Comment 22 Jaroslav Tulach 2004-10-05 15:32:00 UTC
Is not this task finished?
Comment 23 Michal Zlamal 2004-10-05 15:58:01 UTC
yes it is. Closing.