ghidra/gradle/debugger/hasPythonPackage.gradle

46 lines
1.3 KiB
Groovy
Raw Normal View History

/* ###
* IP: GHIDRA
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
task assemblePyPackage(type: Copy) {
from "src/main/py"
into "build/pypkg/"
}
rootProject.tasks.prepDev.dependsOn(assemblePyPackage)
task buildPyPackage(type: Exec) {
ext.dist = { file("build/pypkg/dist") }
inputs.files(assemblePyPackage)
outputs.dir(dist)
2023-08-04 18:29:45 +00:00
workingDir { "build/pypkg" }
commandLine "python3", "-m", "build"
}
// At the moment, any module with a python package also distributes it.
// We can separate this into `distributePythonPackage` later, if necessary.
rootProject.assembleDistribution {
def p = this.project
def zipPath = getZipPath(p)
from (p.assemblePyPackage) {
exclude '**/*.pyc'
exclude '**/*.pyo'
exclude '**/__pycache__/**'
into { zipPath + "/pypkg" }
}
}