mirror of
https://github.com/aljazceru/react-native-pubky.git
synced 2025-12-17 06:34:21 +01:00
Updates build scripts to account for the updated naming convention. Updates bindings accordingly.
45 lines
1.4 KiB
JavaScript
45 lines
1.4 KiB
JavaScript
const fs = require('fs').promises;
|
|
const path = require('path');
|
|
|
|
const ktPath = 'rust/bindings/android/pubkycore.kt';
|
|
const ktDestinationPath = 'android/src/main/java/uniffi/pubkycore/';
|
|
const jniPath = 'rust/bindings/android/jniLibs';
|
|
const jniDestinationPath = 'android/src/main/jniLibs/';
|
|
|
|
async function runSetup() {
|
|
try {
|
|
console.log('Removing existing files...');
|
|
// Remove destination directories if they exist
|
|
await Promise.all([
|
|
fs.rm(ktDestinationPath, { recursive: true, force: true }),
|
|
fs.rm(jniDestinationPath, { recursive: true, force: true }),
|
|
]);
|
|
|
|
console.log('Creating directories...');
|
|
// Create destination directories if they don't exist
|
|
await Promise.all([
|
|
fs.mkdir(ktDestinationPath, { recursive: true }),
|
|
fs.mkdir(jniDestinationPath, { recursive: true }),
|
|
]);
|
|
|
|
console.log('Copying Kotlin file...');
|
|
// Copy Kotlin file to destination
|
|
const ktTargetPath = path.join(ktDestinationPath, 'pubkycore.kt');
|
|
await fs.copyFile(ktPath, ktTargetPath);
|
|
|
|
console.log('Copying JNI libraries...');
|
|
// Copy JNI libraries directory
|
|
await fs.cp(jniPath, jniDestinationPath, { recursive: true });
|
|
|
|
console.log('Android files copied successfully!');
|
|
} catch (error) {
|
|
console.error('Error during setup:', error);
|
|
process.exit(1);
|
|
}
|
|
}
|
|
|
|
runSetup().catch((error) => {
|
|
console.error('Unhandled error:', error);
|
|
process.exit(1);
|
|
});
|