OSDN Git Service

ADT: Library support: source folder and pre-compiler.
authorXavier Ducrohet <xav@android.com>
Fri, 19 Feb 2010 03:52:14 +0000 (19:52 -0800)
committerXavier Ducrohet <xav@android.com>
Wed, 24 Feb 2010 00:18:21 +0000 (16:18 -0800)
commit610a7584cd2ede40772dbe95bd59e525a3859837
tree01b03dcafc9aca050b7eba98933edac12eb6afea
parente87bc60813f90110c1156b086138e5e856c93809
ADT: Library support: source folder and pre-compiler.

This is the first step in the library support.
For each library, create a source folder in the main project that
is linked to the source folder of the library project.

The linked resources use a path variable named after the library
in the format: _android_<library name>.
These variables are always created when the link is created.

For now the link is recreated all the time, but we could
do a check and not redo it if it's already done.

Additionally, the pre-compiler creates the R class from
the res folders of the main and library projects.

Some misc fixes/clean-ups:
* Fix an issue with the new ProjectState where opening a
  project would not trigger a load of its target data.

* Changed the lock for all SDK operation:
  - moved the lock in Sdk accessible as Sdk.getLock()
  - made the few Sdk method that used their own synchronize
    block use the same lock as all others.

* removed the builders project and moved its content to sdklib
  This was meant as a way to share code between the Eclipse
  builders and the Ant tasks but sdklib is already used by
  both, so it's better to put the code in sdklib than
  have yet another project.

Change-Id: Ibfa449c7a809f28e428c03bbda8215969717ecde
36 files changed:
anttasks/src/com/android/ant/SetupTask.java
builders/.classpath [deleted file]
builders/.gitignore [deleted file]
builders/.project [deleted file]
builders/Android.mk [deleted file]
builders/src/Android.mk [deleted file]
eclipse/plugins/com.android.ide.eclipse.adt/.classpath
eclipse/plugins/com.android.ide.eclipse.adt/META-INF/MANIFEST.MF
eclipse/plugins/com.android.ide.eclipse.adt/build.properties
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/AdtPlugin.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/build/PreCompilerBuilder.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/project/AndroidClasspathContainerInitializer.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/project/AndroidManifestParser.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/project/ProjectState.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/MultiResourceFile.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/ProjectResources.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/ResourceFile.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/ResourceFolder.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/ResourceManager.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/SingleResourceFile.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/files/IFileWrapper.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/resources/manager/files/IFolderWrapper.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/sdk/Sdk.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/ui/ResourceExplorerView.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/wizards/newproject/NewProjectCreationPage.java
eclipse/plugins/com.android.ide.eclipse.tests/.classpath
eclipse/plugins/com.android.ide.eclipse.tests/src/com/android/ide/eclipse/tests/SdkTestCase.java
eclipse/plugins/com.android.ide.eclipse.tests/unittests/com/android/ide/eclipse/adt/internal/editors/resources/manager/ConfigMatchTest.java
eclipse/scripts/create_adt_symlinks.sh
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/FileWrapper.java [moved from builders/src/com/android/builders/FileWrapper.java with 80% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/FolderWrapper.java [moved from builders/src/com/android/builders/FolderWrapper.java with 75% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/IAbstractFile.java [moved from builders/src/com/android/builders/IAbstractFile.java with 96% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/IAbstractFolder.java [moved from builders/src/com/android/builders/IAbstractFolder.java with 76% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/IAbstractResource.java [moved from builders/src/com/android/builders/IAbstractResource.java with 88% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/internal/io/StreamException.java [moved from builders/src/com/android/builders/StreamException.java with 95% similarity]
sdkmanager/libs/sdklib/src/com/android/sdklib/xml/AndroidManifest.java