1import fs from 'fs-extra'; 2import path from 'path'; 3 4import { getExpotoolsDir } from '../../Directories'; 5 6export const JniLibNames = [ 7 'libfb', 8 'libfolly_json', 9 'libglog_init', 10 'glog', 11 'reactnativejni', 12 'reactnativejnifb', 13 'csslayout', 14 'yoga', 15 'fbgloginit', 16 'yogajni', 17 'jschelpers', 18 'packagerconnectionjnifb', 19 'privatedata', 20 'yogafastmath', 21 'fabricjscjni', 22 'jscexecutor', 23 'libjscexecutor', 24 'jsinspector', 25 'libjsinspector', 26 'fabricjni', 27 'turbomodulejsijni', 28 'reactnativeblob', 29 'jsijniprofiler', 30 'hermes', 31 'hermes-executor-release', 32 'hermes-executor-common-release', 33 'hermes-executor-debug', 34 'hermes-executor-common-debug', 35 'reanimated', 36 'hermes-inspector', 37 'folly_futures', 38 'react_codegen_rncore', 39 'react_nativemodule_core', 40 'reactnativeutilsjni', 41 'reactperfloggerjni', 42 'butter', 43 'jsi', 44 'logger', 45 'mapbufferjni', 46 'react_debug', 47 'react_render_animations', 48 'react_render_attributedstring', 49 'react_render_componentregistry', 50 'react_render_core', 51 'react_render_debug', 52 'react_render_graphics', 53 'react_render_imagemanager', 54 'react_render_leakchecker', 55 'react_render_mapbuffer', 56 'react_render_mounting', 57 'react_render_runtimescheduler', 58 'react_render_scheduler', 59 'react_render_telemetry', 60 'react_render_templateprocessor', 61 'react_render_textlayoutmanager', 62 'react_render_uimanager', 63 'react_utils', 64 'react_config', 65 'rrc_image', 66 'rrc_modal', 67 'rrc_progressbar', 68 'rrc_root', 69 'rrc_scrollview', 70 'rrc_slider', 71 'rrc_switch', 72 'rrc_text', 73 'rrc_textinput', 74 'rrc_unimplementedview', 75 'rrc_view', 76 'runtimeexecutor', 77 78 // TODO: considering versioning prebuilt fbjni by patchelf after RN 0.65 which has newer fbjni version. 79 // or simply upgrade old SDK to use latest fbjni. 80 // 81 // 'fbjni', 82 // 'libfbjni', 83]; 84 85// this list is used in the shell scripts as well as directly by expotools 86// we read it in here to keep the source of truth in one place 87export const getJavaPackagesToRename = async () => { 88 const packagesToRename = await fs.readFile( 89 path.join(getExpotoolsDir(), 'src/versioning/android/android-packages-to-rename.txt'), 90 'utf8' 91 ); 92 return packagesToRename.split('\n').filter((p: string) => !!p); 93}; 94