Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(Android): add autolinking on Fabric #1585

Merged
merged 36 commits into from Sep 19, 2022
Merged

Commits on Sep 10, 2022

  1. Configuration menu
    Copy the full SHA
    d5a9109 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4f84579 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    da0faed View commit details
    Browse the repository at this point in the history

Commits on Sep 12, 2022

  1. Configuration menu
    Copy the full SHA
    e177bf4 View commit details
    Browse the repository at this point in the history
  2. chore: copy codegened implementation of cpp code for RNSScreen

    For now it is only partially filtered (there is also code for other
        components for now). I'm not sure whether I should leave all the
    codegened code or leave only the RNSScreen part.
    kkafar committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    d3b7f73 View commit details
    Browse the repository at this point in the history
  3. chore: remove ComponentsDescriptors.h

    As we provide custom implementation
    kkafar committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    da63061 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7963fd0 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    882f032 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    57f3346 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d54857f View commit details
    Browse the repository at this point in the history
  8. fix: add all components descriptors & specify cmakeListsPath

    Setting `componentDescriptors` causes RNCLI to not search for
    autogenerated ones -> we need to specify all of them manually
    kkafar committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    0ccc2ea View commit details
    Browse the repository at this point in the history
  9. chore: build custom & generated code with cmake

    This CMake builds both custom cpp code & generated one.
    It seems to me, that it must be done this way as project name recognized
    by autogenerated RN CLI cmake is `react_codegen_rnscreens` and we can
    not change that => only this library is included in final build.
    kkafar committed Sep 12, 2022
    Configuration menu
    Copy the full SHA
    b8ccfa3 View commit details
    Browse the repository at this point in the history

Commits on Sep 13, 2022

  1. Configuration menu
    Copy the full SHA
    1a00f6a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    e1d5f3e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ba5252b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    de99905 View commit details
    Browse the repository at this point in the history

Commits on Sep 14, 2022

  1. Configuration menu
    Copy the full SHA
    449316f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    29bd651 View commit details
    Browse the repository at this point in the history
  3. chore: add common/cpp as include directory for application project

    IMPORTANT: this causes our custom `rnscreens.h` header to take
    precedence over its codegened counterpart when imported in following way
    in `rncli.cpp`:
    
    ```c++
    ```
    
    This is important beacuse it allows us to inject
    `RNSScreenComponentDescriptor` symbol into `rncli.cpp` translation unit
    scope.
    kkafar committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    8e011e7 View commit details
    Browse the repository at this point in the history
  4. chore: do not manually load rnscreens_modules shared library

    We no longer build this target as we want to rely on new Android
    autolinking.
    kkafar committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    81b86ad View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4b56ca7 View commit details
    Browse the repository at this point in the history
  6. fix: enforce non-local visibility of getDynamic symbol of

    libreact_codegen_rnscreens.so library
    
    This symbol for some, unknown yet reason, is not visible during linking
    of lib<project-name>.so (exactly during linking rncli.cpp.o file). We
    enforce desired visibility with compiler attributte. Note however that
    this solution should be only temporary as the exact reason should be
    tracked down and the issue shall be fixed with more generic approach.
    kkafar committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    05de5a5 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    b573d77 View commit details
    Browse the repository at this point in the history
  8. chore: remove unused common/cpp/Android.mk file

    This file is not only no longer used, but also it does not contain valid
    configuration for our library.
    
    This file was replaced with common/cpp/CMakeLists.txt as we migrated to
    CMake build system.
    kkafar committed Sep 14, 2022
    Configuration menu
    Copy the full SHA
    7bd60c4 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    e2a4909 View commit details
    Browse the repository at this point in the history

Commits on Sep 15, 2022

  1. chore: generalise path resolution in CMake

    Up to this point, some paths were hardcoded, this is no longer the case.
    kkafar committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    007895b View commit details
    Browse the repository at this point in the history
  2. fix: iOS build

    This is temporary workaround as `rnscreens.{h,cpp}` files are not part
    of common cpp code - they are android specific I believe. They must be
    moved to android JNI directory along with CMakeLists.txt
    kkafar committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    c94c6e8 View commit details
    Browse the repository at this point in the history
  3. chore: move Android specific configuration & cpp files to Android

    specific directory
    
    These files are not shared between iOS & Android platforms.
    kkafar committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    5d4912c View commit details
    Browse the repository at this point in the history
  4. fix: include path

    kkafar committed Sep 15, 2022
    Configuration menu
    Copy the full SHA
    48630ec View commit details
    Browse the repository at this point in the history

Commits on Sep 16, 2022

  1. chore: use JSI_EXPORT macro instead of setting compiler attribute

    explicitly
    
    This is better as it also handles Windows C++ compilers.
    kkafar committed Sep 16, 2022
    Configuration menu
    Copy the full SHA
    2cfe611 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8ce7490 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    0d9f573 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    213e592 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9c00515 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    3afe846 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    509f1af View commit details
    Browse the repository at this point in the history