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