mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-01 14:58:14 +00:00
Android: remove dead Ant/Eclipse build scripts
The Ant build hasn't been runnable since the SDK dropped tools/ant/, so build.xml, custom_rules.xml, ab-ant.sh, ant-build.bat, project.properties and proguard-project.txt all go. Plus some orphans: buildassets.sh (nothing called it), build.sh (still referred to "phoenix"), symx86.cmd (x86 isn't in APP_ABI) and README.TXT (Eclipse import instructions). ab.sh and ab.cmd no longer copy assets into android/assets - only the Ant/Eclipse packaging ever read that directory. Gradle packages the repo-root assets/ directly and ndk-build doesn't look at assets at all, so the stray copy only made it unclear where the APK's assets come from. Noted how that actually works in docs/building.md. Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
1 parent
21c7312486
commit
da882910e3
16 files changed
+9
-233
No files matched your search
@@ -30,7 +30,6 @@ Windows/ipch
|
|||||||
Windows/bin-release
|
Windows/bin-release
|
||||||
Windows/win-version.h
|
Windows/win-version.h
|
||||||
Windows/win-version-*.tmp
|
Windows/win-version-*.tmp
|
||||||
android/assets
|
|
||||||
ext/_Output
|
ext/_Output
|
||||||
android/lint.xml
|
android/lint.xml
|
||||||
PPSSPPWindows64.exe.manifest
|
PPSSPPWindows64.exe.manifest
|
||||||
@@ -96,11 +95,6 @@ __testcompare.png
|
|||||||
vt_ref.bmp
|
vt_ref.bmp
|
||||||
GameLogNotes.txt
|
GameLogNotes.txt
|
||||||
screenshots
|
screenshots
|
||||||
android/assets/lang
|
|
||||||
android/assets/flash0
|
|
||||||
android/assets/flash1
|
|
||||||
android/assets/flash2
|
|
||||||
android/assets/flash3
|
|
||||||
font_atlas.zim.png
|
font_atlas.zim.png
|
||||||
asciifont_atlas.zim.png
|
asciifont_atlas.zim.png
|
||||||
ppge_atlas.zim.png
|
ppge_atlas.zim.png
|
||||||
|
|||||||
@@ -1071,7 +1071,6 @@
|
|||||||
<None Include="..\.github\workflows\manual_generate_apk.yml" />
|
<None Include="..\.github\workflows\manual_generate_apk.yml" />
|
||||||
<None Include="..\.github\workflows\tarball.yml" />
|
<None Include="..\.github\workflows\tarball.yml" />
|
||||||
<None Include="..\AGENTS.md" />
|
<None Include="..\AGENTS.md" />
|
||||||
<None Include="..\android\buildassets.sh" />
|
|
||||||
<None Include="..\android\git-version-gen.sh" />
|
<None Include="..\android\git-version-gen.sh" />
|
||||||
<None Include="..\android\jni\Android.mk" />
|
<None Include="..\android\jni\Android.mk" />
|
||||||
<None Include="..\android\jni\Application.mk" />
|
<None Include="..\android\jni\Application.mk" />
|
||||||
|
|||||||
@@ -695,9 +695,6 @@
|
|||||||
<None Include="..\.github\workflows\generateDockerLayer.yml">
|
<None Include="..\.github\workflows\generateDockerLayer.yml">
|
||||||
<Filter>Build\Actions</Filter>
|
<Filter>Build\Actions</Filter>
|
||||||
</None>
|
</None>
|
||||||
<None Include="..\android\buildassets.sh">
|
|
||||||
<Filter>Build</Filter>
|
|
||||||
</None>
|
|
||||||
<None Include="..\ios\Launch Screen.storyboard">
|
<None Include="..\ios\Launch Screen.storyboard">
|
||||||
<Filter>Other Platforms\iOS</Filter>
|
<Filter>Other Platforms\iOS</Filter>
|
||||||
</None>
|
</None>
|
||||||
|
|||||||
@@ -1,30 +0,0 @@
|
|||||||
================================================================
|
|
||||||
|
|
||||||
NOTE: These are legacy instructions for building using ndk-build.
|
|
||||||
|
|
||||||
We mostly only use this on CI because it's faster than gradle.
|
|
||||||
There might also be some holdouts around still using eclipse.
|
|
||||||
|
|
||||||
================================================================
|
|
||||||
|
|
||||||
First, build the C++ static library:
|
|
||||||
|
|
||||||
> cd android
|
|
||||||
> ./ab.sh
|
|
||||||
Or
|
|
||||||
> ./ab.cmd
|
|
||||||
|
|
||||||
as appropriate.
|
|
||||||
|
|
||||||
Start Eclipse, import the android directory as an existing project
|
|
||||||
You need to also load the "native" project into your eclipse workspace
|
|
||||||
Build and run.
|
|
||||||
|
|
||||||
If you modify the C++ code, you need to rebuild the static library, of
|
|
||||||
course. To get Eclipse to understand that you have in fact changed something
|
|
||||||
if you haven't also changed any Java code, just add a space character to
|
|
||||||
PPSSPPActivity.java, or right click the project and choose Refresh, and then
|
|
||||||
relaunch the app on the device.
|
|
||||||
|
|
||||||
A real Android device is strongly recommended for testing. Don't trust
|
|
||||||
the emulator.
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
ant debug
|
|
||||||
adb install -r bin/PPSSPP-debug.apk
|
|
||||||
adb shell am start -n org.ppsspp.ppsspp/org.ppsspp.ppsspp.PpssppActivity
|
|
||||||
@@ -1,15 +1,3 @@
|
|||||||
mkdir assets > nul
|
|
||||||
xcopy ..\assets\flash0 assets\flash0\ /s /y <d.txt
|
|
||||||
xcopy ..\assets\lang assets\lang\ /s /y <d.txt
|
|
||||||
xcopy ..\assets\shaders assets\shaders\ /s /y <d.txt
|
|
||||||
xcopy ..\assets\themes assets\themes\ /s /y <d.txt
|
|
||||||
xcopy ..\assets\ui_images assets\ui_images\ /s /y <d.txt
|
|
||||||
copy ..\assets\*.ini assets\
|
|
||||||
copy ..\assets\*.ttf assets\
|
|
||||||
copy ..\assets\*.png assets\
|
|
||||||
copy ..\assets\*.zim assets\
|
|
||||||
copy ..\assets\*.meta assets\
|
|
||||||
copy ..\assets\*.wav assets\
|
|
||||||
SET NDK=C:\Android\sdk\ndk\29.0.14206865
|
SET NDK=C:\Android\sdk\ndk\29.0.14206865
|
||||||
REM SET NDK=C:\Android\ndk
|
REM SET NDK=C:\Android\ndk
|
||||||
SET NDK_MODULE_PATH=..\ext
|
SET NDK_MODULE_PATH=..\ext
|
||||||
|
|||||||
@@ -1,14 +1 @@
|
|||||||
mkdir -p assets
|
|
||||||
cp -r ../assets/flash0 assets/
|
|
||||||
cp -r ../assets/lang assets/
|
|
||||||
cp -r ../assets/shaders assets/
|
|
||||||
cp -r ../assets/themes assets/
|
|
||||||
cp -r ../assets/debugger assets/
|
|
||||||
cp -r ../assets/upload assets/
|
|
||||||
cp -r ../assets/ui_images assets/
|
|
||||||
cp ../assets/*.ini assets/
|
|
||||||
cp ../assets/*.ttf assets/
|
|
||||||
cp ../assets/*.zim assets/
|
|
||||||
cp ../assets/*.meta assets/
|
|
||||||
cp ../assets/*.wav assets/
|
|
||||||
NDK_MODULE_PATH=../ext $NDK/ndk-build -j$(nproc 2>/dev/null || echo 4) $*
|
NDK_MODULE_PATH=../ext $NDK/ndk-build -j$(nproc 2>/dev/null || echo 4) $*
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
set ANDROID_HOME=path/to/android-sdk/
|
|
||||||
set NDK=path/to/android-ndk/
|
|
||||||
ant release -Dndkbuildopt="-j6"
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
cmake .. && make && (cd ../jni; ../build/atlastool atlasscript.txt main; cd ../build) && make && (cd ../jni; ../build/phoenix; cd ../build)
|
|
||||||
@@ -1,98 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project name="PPSSPP" default="help">
|
|
||||||
|
|
||||||
<!-- The local.properties file is created and updated by the 'android' tool.
|
|
||||||
It contains the path to the SDK. It should *NOT* be checked into
|
|
||||||
Version Control Systems. -->
|
|
||||||
<property file="local.properties" />
|
|
||||||
|
|
||||||
<!-- The ant.properties file can be created by you. It is only edited by the
|
|
||||||
'android' tool to add properties to it.
|
|
||||||
This is the place to change some Ant specific build properties.
|
|
||||||
Here are some properties you may want to change/update:
|
|
||||||
|
|
||||||
source.dir
|
|
||||||
The name of the source directory. Default is 'src'.
|
|
||||||
out.dir
|
|
||||||
The name of the output directory. Default is 'bin'.
|
|
||||||
|
|
||||||
For other overridable properties, look at the beginning of the rules
|
|
||||||
files in the SDK, at tools/ant/build.xml
|
|
||||||
|
|
||||||
Properties related to the SDK location or the project target should
|
|
||||||
be updated using the 'android' tool with the 'update' action.
|
|
||||||
|
|
||||||
This file is an integral part of the build system for your
|
|
||||||
application and should be checked into Version Control Systems.
|
|
||||||
|
|
||||||
-->
|
|
||||||
<property file="ant.properties" />
|
|
||||||
|
|
||||||
<!-- if sdk.dir was not set from one of the property file, then
|
|
||||||
get it from the ANDROID_HOME env var.
|
|
||||||
This must be done before we load project.properties since
|
|
||||||
the proguard config can use sdk.dir -->
|
|
||||||
<property environment="env" />
|
|
||||||
<condition property="sdk.dir" value="${env.ANDROID_HOME}">
|
|
||||||
<isset property="env.ANDROID_HOME" />
|
|
||||||
</condition>
|
|
||||||
|
|
||||||
<!-- this property is needed to run the script via ANT. It requires the NDK
|
|
||||||
environment variable which is accessed by ant during the build process -->
|
|
||||||
<condition property="ndk.dir" value="${env.NDK}">
|
|
||||||
<isset property="env.NDK" />
|
|
||||||
</condition>
|
|
||||||
|
|
||||||
<!-- The project.properties file is created and updated by the 'android'
|
|
||||||
tool, as well as ADT.
|
|
||||||
|
|
||||||
This contains project specific properties such as project target, and library
|
|
||||||
dependencies. Lower level build properties are stored in ant.properties
|
|
||||||
(or in .classpath for Eclipse projects).
|
|
||||||
|
|
||||||
This file is an integral part of the build system for your
|
|
||||||
application and should be checked into Version Control Systems. -->
|
|
||||||
<loadproperties srcFile="project.properties" />
|
|
||||||
|
|
||||||
<!-- quick check on sdk.dir -->
|
|
||||||
<fail
|
|
||||||
message="sdk.dir is missing. Make sure to generate local.properties using 'android update project' or to inject it through the ANDROID_HOME environment variable."
|
|
||||||
unless="sdk.dir"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!--
|
|
||||||
Import per project custom build rules if present at the root of the project.
|
|
||||||
This is the place to put custom intermediary targets such as:
|
|
||||||
-pre-build
|
|
||||||
-pre-compile
|
|
||||||
-post-compile (This is typically used for code obfuscation.
|
|
||||||
Compiled code location: ${out.classes.absolute.dir}
|
|
||||||
If this is not done in place, override ${out.dex.input.absolute.dir})
|
|
||||||
-post-package
|
|
||||||
-post-build
|
|
||||||
-pre-clean
|
|
||||||
-->
|
|
||||||
<import file="custom_rules.xml" optional="true" />
|
|
||||||
|
|
||||||
<!-- Import the actual build file.
|
|
||||||
|
|
||||||
To customize existing targets, there are two options:
|
|
||||||
- Customize only one target:
|
|
||||||
- copy/paste the target into this file, *before* the
|
|
||||||
<import> task.
|
|
||||||
- customize it to your needs.
|
|
||||||
- Customize the whole content of build.xml
|
|
||||||
- copy/paste the content of the rules files (minus the top node)
|
|
||||||
into this file, replacing the <import> task.
|
|
||||||
- customize to your needs.
|
|
||||||
|
|
||||||
***********************
|
|
||||||
****** IMPORTANT ******
|
|
||||||
***********************
|
|
||||||
In all cases you must update the value of version-tag below to read 'custom' instead of an integer,
|
|
||||||
in order to avoid having your file be overridden by tools such as "android update project"
|
|
||||||
-->
|
|
||||||
<!-- version-tag: 1 -->
|
|
||||||
<import file="${sdk.dir}/tools/ant/build.xml" />
|
|
||||||
|
|
||||||
</project>
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
mkdir -p assets
|
|
||||||
cp ../assets/*.zim assets/
|
|
||||||
cp ../assets/*.meta assets/
|
|
||||||
cp ../assets/*.wav assets/
|
|
||||||
cp ../assets/*.ini assets/
|
|
||||||
cp ../assets/*.ttf assets/
|
|
||||||
cp -r ../assets/flash0 assets/
|
|
||||||
cp -r ../assets/lang assets/
|
|
||||||
cp -r ../assets/ui_images assets/
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<project name="PPSSPP" default="help">
|
|
||||||
<condition property="ndkbuild_exe" value="ndk-build.cmd" else="ndk-build">
|
|
||||||
<os family="windows" />
|
|
||||||
</condition>
|
|
||||||
<property name="ndkbuildopt" value=""/>
|
|
||||||
<target name="-pre-build">
|
|
||||||
<exec executable="${ndk.dir}/${ndkbuild_exe}" failonerror="true">
|
|
||||||
<arg line="-j4 ${ndkbuildopt}"/>
|
|
||||||
<env key="NDK_MODULE_PATH" path="../ext"/>
|
|
||||||
</exec>
|
|
||||||
</target>
|
|
||||||
<target name="clean" depends="android_rules.clean">
|
|
||||||
<exec executable="${ndk.dir}/${ndkbuild_exe}" failonerror="true">
|
|
||||||
<arg value="clean"/>
|
|
||||||
<env key="NDK_MODULE_PATH" path="../ext"/>
|
|
||||||
</exec>
|
|
||||||
</target>
|
|
||||||
</project>
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
# To enable ProGuard in your project, edit project.properties
|
|
||||||
# to define the proguard.config property as described in that file.
|
|
||||||
#
|
|
||||||
# Add project specific ProGuard rules here.
|
|
||||||
# By default, the flags in this file are appended to flags specified
|
|
||||||
# in ${sdk.dir}/tools/proguard/proguard-android.txt
|
|
||||||
# You can edit the include path and order by changing the ProGuard
|
|
||||||
# include property in project.properties.
|
|
||||||
#
|
|
||||||
# For more details, see
|
|
||||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
|
||||||
|
|
||||||
# Add any project specific keep options here:
|
|
||||||
|
|
||||||
# If your project uses WebView with JS, uncomment the following
|
|
||||||
# and specify the fully qualified class name to the JavaScript interface
|
|
||||||
# class:
|
|
||||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
|
||||||
# public *;
|
|
||||||
#}
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
# This file is automatically generated by Android Tools.
|
|
||||||
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
|
|
||||||
#
|
|
||||||
# This file must be checked in Version Control Systems.
|
|
||||||
#
|
|
||||||
# To customize properties used by the Ant build system edit
|
|
||||||
# "ant.properties", and override values to adapt the script to your
|
|
||||||
# project structure.
|
|
||||||
#
|
|
||||||
|
|
||||||
# Project target.
|
|
||||||
target=android-26
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
adb logcat | %NDK%\ndk-stack -sym obj/local/x86
|
|
||||||
+9
-2
@@ -61,6 +61,13 @@ bug, since CI runs the equivalent of `UnitTest.exe all` on every commit across m
|
|||||||
platforms without apparent issue. If `all`/`Jit` hangs in your environment, run every other
|
platforms without apparent issue. If `all`/`Jit` hangs in your environment, run every other
|
||||||
test by name instead (skip `Jit`) to still get real coverage.
|
test by name instead (skip `Jit`) to still get real coverage.
|
||||||
|
|
||||||
|
## Android assets
|
||||||
|
|
||||||
|
The APK's `assets/` directory is the repo-root `assets/` directory, wired up by
|
||||||
|
`assets.directories.add("../assets")` in `android/build.gradle.kts`. There's no copy step, so a file dropped
|
||||||
|
in `assets/` ships as-is. `ndk-build` doesn't read assets at all, and nothing populates `android/assets/` -
|
||||||
|
if you have one, it's a leftover from the old Ant/Eclipse build and is ignored.
|
||||||
|
|
||||||
## Legacy Android build (android/jni)
|
## Legacy Android build (android/jni)
|
||||||
|
|
||||||
There is a legacy Android build using the raw NDK build system (`android/jni/Android.mk` + `ndk-build`), separate from the
|
There is a legacy Android build using the raw NDK build system (`android/jni/Android.mk` + `ndk-build`), separate from the
|
||||||
@@ -69,8 +76,8 @@ useful for quick test builds (it can build `ppsspp_headless` and the unit tests
|
|||||||
by default, but if you want to test-build it locally:
|
by default, but if you want to test-build it locally:
|
||||||
|
|
||||||
- The NDK path is hardcoded in `android/ab.cmd` (Windows) or passed via the `NDK` env var to `android/ab.sh` (POSIX).
|
- The NDK path is hardcoded in `android/ab.cmd` (Windows) or passed via the `NDK` env var to `android/ab.sh` (POSIX).
|
||||||
It should match the `ndkVersion` in `android/build.gradle.kts`. The scripts copy assets first, then run ndk-build with
|
It should match the `ndkVersion` in `android/build.gradle.kts`. The scripts just run ndk-build with a core count
|
||||||
a core count derived from the machine (nproc / %NUMBER_OF_PROCESSORS%).
|
derived from the machine (nproc / %NUMBER_OF_PROCESSORS%).
|
||||||
- Example (POSIX): `cd android && NDK=/path/to/ndk ./ab.sh APP_ABI=arm64-v8a HEADLESS=1`
|
- Example (POSIX): `cd android && NDK=/path/to/ndk ./ab.sh APP_ABI=arm64-v8a HEADLESS=1`
|
||||||
- The `ppsspp_headless` executable ends up in `android/libs/<abi>/`.
|
- The `ppsspp_headless` executable ends up in `android/libs/<abi>/`.
|
||||||
|
|
||||||
|
|||||||
Reference in new issue
Block a user