Commit Graph

63 Commits

Author SHA1 Message Date
Andres Suarez
0675dd924d Tidy up Flipper license headers [1/2]
Reviewed By: passy

Differential Revision: D17863711

fbshipit-source-id: 259dc77826fb803ff1b88c88529d7f679d3b74d8
2019-10-11 13:46:45 -07:00
Pascal Hartig
975b52d26b Build with static libc++
Summary:
This avoids having to perform gymnastics like in
https://github.com/facebook/react-native/pull/26697

Reviewed By: jknoxville

Differential Revision: D17735954

fbshipit-source-id: 507548aab89309beeb228b104a24af8acd10ce9a
2019-10-03 04:39:20 -07:00
Chaiwat Ekkaewnumchai
053cfc09f3 Make LeakCanary a Separate Plugin
Summary: Pull Request resolved: https://github.com/facebook/flipper/pull/559

Reviewed By: passy

Differential Revision: D17546936

fbshipit-source-id: dce128a771b73e8b18dfc2b78ee99502c3f1ce86
2019-09-25 03:05:56 -07:00
Pascal Hartig
8c519abc7e Upgrade to fbjni 0.2.0 (#557)
Summary:
This is now published to Maven Central and doesn't require a
separate repository.
Pull Request resolved: https://github.com/facebook/flipper/pull/557

Test Plan: CI

Reviewed By: danielbuechele

Differential Revision: D17526448

Pulled By: passy

fbshipit-source-id: 169b5bc5f6568d40697e5e48a9873f8a64bd5e00
2019-09-23 08:14:08 -07:00
Pascal Hartig
2baadf9867 Make litho/sections a separate plugin
Summary:
Breaking Litho/Sections off. Doesn't really make sense to have
two deps for this especially since they're pretty tightly coupled.

This makes our core already quite slim.

Reviewed By: jknoxville

Differential Revision: D17420118

fbshipit-source-id: 9a03911f4af6410745b9aefd0e6a75bdf106660f
2019-09-19 03:02:51 -07:00
Pascal Hartig
c4a9b603e2 Make network a separate plugin
Summary: Per title.

Reviewed By: jknoxville

Differential Revision: D17419678

fbshipit-source-id: aee00f077b7ed955c60884853dc1128d27366ee8
2019-09-19 03:02:51 -07:00
Pascal Hartig
7ac82bec4e Make fresco a stand-alone gradle project (#548)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/548

First project to pull out of the "fat distribution" we currently have.
Still needs setup for Maven and registration in Bintray.

Reviewed By: jknoxville

Differential Revision: D17395660

fbshipit-source-id: 6244495a2e25d705dd930ef87c7e5e1f038eb921
2019-09-19 03:02:51 -07:00
Pascal Hartig
0298ae74d0 Disable openssl in libevent by default
Summary: It's getting really tedious to turn these off one by one.

Reviewed By: jknoxville

Differential Revision: D17366198

fbshipit-source-id: 25443d7a18c81cd18edea21d75cfa70e4fbf4171
2019-09-13 08:56:41 -07:00
Pascal Hartig
e6e070684c Fix x86_64 / upgrade libevent (#538)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/538

Upgrades libevent to the August release 2.1.11.

Some notable things:

- The CMake file they ship with is actually broken. It contains a reference to an "uninstall.cmake" script that they don't include in the archive.
- There is some git magic in the CMake script which throws very annoying warnings if you're not in a git repository and if you are, it's still super useless because it assumes it's the libevent repo.
- I've removed the uninstall reference and replaced version detection magic with hardcoded values. The result is the "CMakeLists.txt" in the overrides folder. For future upgraders: You'll have to either remove the override or apply similar steps to the next release.
- The `event-config.h` is simply one of the outputs I found under `android/build/libevent/x86/include/event2/event-config.h`. They seem to be stable across architectures so it's easier to just copy it over than to fix the CMake logic that should actually pick it up from the Android build path.
- The cmake target names have changed and have an underscore in them, now.
- Verified with an SDK 28 x86_64 that this does fix https://github.com/facebook/flipper/issues/482.

Fixes GH482.

Reviewed By: jknoxville

Differential Revision: D17164731

fbshipit-source-id: 642744118065bea2674dbb0e1af91a11598066cc
2019-09-04 04:44:50 -07:00
Pascal Hartig
4544c4fff1 Remove vendored copy of fbjni (#530)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/530

Use the pre-release of fbjni instead of our bundled copy. I hope this can be made a little less awkward, but it works for now.

Reviewed By: jknoxville

Differential Revision: D16988077

fbshipit-source-id: 936e414f9b2bf82ccb54b107228d79d01acdbf14
2019-09-03 06:06:15 -07:00
Pascal Hartig
2fac83420b Prepare for Litho annotation removal
Summary:
Without this, our build will break with the next Litho release
because the `DoNotStrip` annotation will no longer be exported
as part of `litho-annotations`.

Reviewed By: jknoxville

Differential Revision: D16828144

fbshipit-source-id: f9a78b331678882025732498f18a3443d148ef4d
2019-08-15 08:50:13 -07:00
Pascal Hartig
660fa71505 Reenable x86 builds (#476)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/476

Fixes https://github.com/facebook/flipper/issues/471

Disabling the x86 builds altogether does more harm than good.

Reviewed By: jknoxville

Differential Revision: D16119936

fbshipit-source-id: cc276dcbd1d55585d8c108b76703aa260c9c9a09
2019-07-04 06:29:50 -07:00
Pritesh Nandgaonkar
7d8db465e1 Bump Folly dependency for Android (#463)
Summary:
Pull Request resolved: https://github.com/facebook/flipper/pull/463

Was made aware [here](https://github.com/facebook/flipper/issues/461) that
we currently don't build with NDK 20 because of Folly. The above issue exists only for x86 platform and not for other platform. I have updated the folly and RSocket. Although this diff doesn't solve the issue mentioned above for x86, but it updates the dependencies to the latest version. To mitigate temporarily, I have updated the gradle to not build for x86.

Reviewed By: passy

Differential Revision: D15713205

fbshipit-source-id: 79dd5825b0b876c87a1868fde8f3353a76012267
2019-06-12 03:40:19 -07:00
John Knox
f71d33586f Disable Databases plugin test until roboelectric is upgraded
Summary: This gradle flag is stopping the other tests from passing.

Reviewed By: quanturium

Differential Revision: D15558776

fbshipit-source-id: 54934c73271e1cbb041877fef0dfb2de21733424
2019-05-30 14:29:12 -07:00
John Knox
a630b50a8f Add databases plugin v0 (android) (#441)
Summary:
Adds a plugin for listing the databases, tables and contents of those tables in an android app.
Right now, works with sqlite, but it should be generic enough to work with other db types.

## Changelog

Add initial version of android databases plugin

Creating a PR, I may need to do some cleaning up, but this is to kick off that process.
Pull Request resolved: https://github.com/facebook/flipper/pull/441

Reviewed By: danielbuechele

Differential Revision: D15288831

Pulled By: jknoxville

fbshipit-source-id: 6379ad60d640ea6b0a9473acc03dd6ea81a3a8d4
2019-05-28 10:17:56 -07:00
Pascal Hartig
b41b64e507 Remove gradle rhino dep
Summary: Noticed that this is still spamming the warning logs during build.

Reviewed By: danielbuechele

Differential Revision: D15354006

fbshipit-source-id: f34b99267d946ccb9ae0704beebbd48d39e9723a
2019-05-15 11:05:18 -07:00
Pascal Hartig
f584eb05dd Another round of header updates
Summary: I hope that this takes care of all the android violations.

Reviewed By: danielbuechele

Differential Revision: D15199150

fbshipit-source-id: 0f5b4edc1bc9d38de0885f88bb2c3e43acfa09cd
2019-05-03 09:59:33 -07:00
Pascal Hartig
8ba4feba66 Add gradle license headers
Summary: Some more will follow.

Reviewed By: jknoxville

Differential Revision: D15146750

fbshipit-source-id: b78331b1fb00f357812e598165d6def62e2a89c8
2019-04-30 05:34:59 -07:00
Mihaela Ogrezeanu
5195bfc0e4 Show Section props in flipper
Summary:
as title.
Refactored the getPropsData from DebugComponentDescriptor and extracted it to separate class so we can use it for SectionComponentDescriptor as well.
Will follow up with adding state info

Reviewed By: passy

Differential Revision: D14386744

fbshipit-source-id: c6b9887aa9d0c8d2333e7e64fa0954e56b505e51
2019-03-20 09:13:21 -07:00
Pascal Hartig
fbe9e3a086 Prepare for Fresco stable release (#385)
Summary:
This unblocks our open source releases.

Pull Request resolved: https://github.com/facebook/flipper/pull/385

Reviewed By: danielbuechele

Differential Revision: D14299867

Pulled By: passy

fbshipit-source-id: d9ce29d0d0713cd54f6d8bed03e7a919f443f44b
2019-03-04 09:03:10 -08:00
Pascal Hartig
e69306b34d Objecthelper
Summary:
Split off objecthelper into a (future) public and an fb-only version. This also open-sources the very first bit which is pretty useless on its own, but will already compile as its neatly stand-alone.

Note that this blocks releases until we have a stable version of Fresco to depend on.

Reviewed By: oprisnik

Differential Revision: D14149645

fbshipit-source-id: 0020d7ceccf89999695414ce389106ca6325ab7e
2019-02-21 03:30:02 -08:00
Pascal Hartig
3478968d3f Add sectionsDebug dependency
Summary: Required to build new Sections plugin.

Reviewed By: mihaelao

Differential Revision: D13986716

fbshipit-source-id: 7ce07192c3e5258eb1eff9528d95ce40145e9b5c
2019-02-07 09:39:20 -08:00
Pascal Hartig
3b18303560 Revert D13302768: [flipper] Upgrade to cmake 3.10.2
Differential Revision:
D13302768

Original commit changeset: c38601659bde

fbshipit-source-id: d624e51a489cd2d85288f85e13e09638e2ebb4be
2018-12-06 04:45:54 -08:00
Pascal Hartig
03b5306459 Upgrade to cmake 3.10.2
Summary: This was recommended by my Android Studio 3.3 when starting up, so let's do this.

Reviewed By: jknoxville

Differential Revision: D13302768

fbshipit-source-id: c38601659bde4515d62b31efbd907b44304aafba
2018-12-05 15:47:22 -08:00
Zac Sweers
62b913d844 Remove guava dependency (#309)
Summary:
It's only used in `JavascriptSessionTest`, and seems fine to keep it in tests

Resolves #172
Pull Request resolved: https://github.com/facebook/flipper/pull/309

Reviewed By: passy

Differential Revision: D12840362

Pulled By: jknoxville

fbshipit-source-id: 4ead5a4bf0c08d792abcadef713f907930a3e4e7
2018-10-31 07:50:45 -07:00
Pascal Hartig
e58961e184 Use compileOnly dependency (#294)
Summary:
Fixes #293.
Pull Request resolved: https://github.com/facebook/flipper/pull/294

Reviewed By: danielbuechele

Differential Revision: D10367678

Pulled By: passy

fbshipit-source-id: 69ccdc470b20d5d43e1bb3c1eb4e52c2e01debb5
2018-10-15 03:11:37 -07:00
Pascal Hartig
84384e523f Rename remaining tests
Summary: Something here must have conflicted upon landing. Redoing this again.

Reviewed By: danielbuechele

Differential Revision: D10145804

fbshipit-source-id: 1176167c7e3880055ff5e7b3d7f5723416f6131f
2018-10-03 03:44:20 -07:00
Pascal Hartig
8456a13ee6 Fix unit test setup
Summary:
There were still some tests with the internal test runner which
would fail in open source and with Gradle.

Reviewed By: priteshrnandgaonkar

Differential Revision: D10145759

fbshipit-source-id: 99915548441e426b88b1fa6ace1e852775e2a770
2018-10-02 09:29:37 -07:00
Pascal Hartig
b756b5490f Set up unit test support in Gradle
Summary:
This works now:

```
./gradlew :android:testDebugUnitTest
BUILD SUCCESSFUL in 1s
39 actionable tasks: 39 up-to-date
```

Reviewed By: danielbuechele

Differential Revision: D10101985

fbshipit-source-id: e3d1f17b29652061498d50a9218a94aaebee67e2
2018-09-30 04:13:53 -07:00
Pascal Hartig
cf1c0748e1 Remove unnecessary plugin sourceSet
Summary: This is from before we adopted the gradle standard layout.

Reviewed By: danielbuechele

Differential Revision: D10101917

fbshipit-source-id: f45ab06cbf4d56a70df1cac6cb1fd234148d2634
2018-09-28 10:14:46 -07:00
Pascal Hartig
c7b0d419cb Rename libsonar* to libflipper*
Summary: Rename the native libraries.

Reviewed By: priteshrnandgaonkar

Differential Revision: D10009245

fbshipit-source-id: 987c4fdb1acc21abbbecfb3db8a672f4aa4e499d
2018-09-25 04:02:29 -07:00
Pascal Hartig
b4b5ccdcd6 Add missing native targets (#248)
Summary:
Depends on #247.

Ensure that `libextra` is included when building sonar targets. My
cleanup was a bit too aggressive.

Fixes #246
Pull Request resolved: https://github.com/facebook/flipper/pull/248

Reviewed By: jknoxville

Differential Revision: D9420724

Pulled By: passy

fbshipit-source-id: f2d0625507a4897051840c95feefc534583b080f
2018-08-21 06:14:37 -07:00
Pascal Hartig
4e943dbb36 Limit CMake targets to build
Summary:
This doesn't solve our build caching issue (GH230) but
helps a bit with build times as we can skip building all
sorts of test targets which are otherwise included.

The sonar target is the only thing we care about here.

Reviewed By: danielbuechele

Differential Revision: D9360117

fbshipit-source-id: 13a976243b48efbe0f69e9fe47780486f9688eb8
2018-08-16 08:27:21 -07:00
Pascal Hartig
dedd953c28 Move leakcanary to open source and add build files
Summary:
Made sure it builds with both buck and Gradle.

Follow-up to D8865149.

Reviewed By: danielbuechele

Differential Revision: D9178885

fbshipit-source-id: 46efaa532efdc1d59ce76e04be6680e233084881
2018-08-06 03:14:20 -07:00
Pascal Hartig
fb2b9cfc9f Update android lib build paths
Summary: Move manifest to correct place, update build.gradle accordingly.

Reviewed By: priteshrnandgaonkar

Differential Revision: D8931222

fbshipit-source-id: e2cf4b507de4ea984b5a2dce1bb9edee0c4e2558
2018-07-20 08:20:50 -07:00
Pascal Hartig
f6b143135c Remove third-party from dependencies
Summary:
:third-party doesn't actually export anything. So we don't need to
explicitly depend on it as it messes with the POM generation otherwise.

Reviewed By: jknoxville

Differential Revision: D8913636

fbshipit-source-id: d0da6ed4c47e8d6b7986ec9f12960c9323ad1640
2018-07-19 08:48:13 -07:00
Pascal Hartig
c0d1510d58 Move android build files to xplat
Summary:
This should work with our existing shipit config. Moves the build
files to xplat and sets up a standard gradle directory structure
that we will continue to move more files into.

Reviewed By: jknoxville

Differential Revision: D8859483

fbshipit-source-id: 5df5882a3bcaee36280af68aeaa740290288e0d3
2018-07-17 03:34:54 -07:00
Pascal Hartig
cd6a5f9ff8 Reorganize native dep download and extraction (#154)
Summary:
This moves the native setup to a separate gradle file and unpacks everything outside the build folder. That way we don't throw everything away on every incremental build.

This is an intermediate step to get to a more declarative setup like Fresco has it and get rid of the individual hacks we have for every download.
Pull Request resolved: https://github.com/facebook/Sonar/pull/154

Reviewed By: jknoxville

Differential Revision: D8833812

Pulled By: passy

fbshipit-source-id: 2424c9d6e22e6092c04af344e06939b4a6aba041
2018-07-16 10:26:10 -07:00
Pascal Hartig
fcd1b1e773 Clean up dependencies (#153)
Summary:
Remove unused dependencies and centralise the remaining ones in the
global project config.
Pull Request resolved: https://github.com/facebook/Sonar/pull/153

Reviewed By: priteshrnandgaonkar

Differential Revision: D8820462

Pulled By: passy

fbshipit-source-id: 1c845898930eb62942379fddec6da39dbdc426d0
2018-07-12 09:05:55 -07:00
Pascal Hartig
c871496f8c Update build deps (#151)
Summary:
Update some build dependencies (gradle, android plugin) and make some
minor cleanups in the gradle files along the way.
Pull Request resolved: https://github.com/facebook/Sonar/pull/151

Reviewed By: priteshrnandgaonkar

Differential Revision: D8818841

Pulled By: passy

fbshipit-source-id: 78b6592dbf967553aadead57a60023a0b5ae79b6
2018-07-12 06:47:41 -07:00
Pascal Hartig
c7de8b8d37 Link against OpenSSL statically (#149)
Summary:
Compile against a static version of OpenSSL for better compatibility
with apps that already use OpenSSL in some fashion.
Pull Request resolved: https://github.com/facebook/Sonar/pull/149

Reviewed By: priteshrnandgaonkar

Differential Revision: D8804169

Pulled By: passy

fbshipit-source-id: 4de66a77806a3b3f01b2cf5f253916f2cf6f48e8
2018-07-11 08:42:02 -07:00
Pascal Hartig
3dcf7722bb Add support for x86_64 builds (#128)
Summary:
Add the required compiler flag for Folly when building x86_64.

I'll prepare a new release for this shortly.

Depends on #126
Closes https://github.com/facebook/Sonar/pull/128

Reviewed By: danielbuechele

Differential Revision: D8731955

Pulled By: priteshrnandgaonkar

fbshipit-source-id: 9511811b0b51205989a5200ad9d0d8689ca684cb
2018-07-04 10:17:52 -07:00
Pascal Hartig
69711642c9 Build against vanilla OpenSSL 1.1.0h (#125)
Summary:
This uses OpenSSL 1.1.0h to build and link against. The `.so`s are
precompiled and hand-patched from [this
repository](https://github.com/passy/android-database-sqlcipher). The
patching was necessary to fix the `SONAME` and corresponding `NEEDED`
flags to *not* contain a `.1.1` version suffix as Gradle will refuse to
bundle those.

We basically only use the headers for the remaining part.

The precompiled version contains ABI support for `arm64-v8a`, `armeabi`,
`armeabi-v7a`, `x86` and most importantly `x86_64`. HOWEVER, `x86_64` is
still excluded for now because folly fails to compile due to a missing
compiler flag:

```
error: needs target feature pclmul
```

This should be easily fixable by ensuring that `-mpclmul` is added to
the CFLAGS if we're compiling for an `x86_64` target in the
`CMakeLists.txt` for Folly.

Closes #113.
Closes https://github.com/facebook/Sonar/pull/125

Reviewed By: priteshrnandgaonkar

Differential Revision: D8723636

Pulled By: passy

fbshipit-source-id: 41c61047d2793ebaef5793a3c937c4d628471d6a
2018-07-03 13:18:53 -07:00
Pascal Hartig
0515ddb76e Setup fbjni sub-project for maven (#119)
Summary:
Set up our fbjni sub-project to be published to Maven Central.
This removes a bunch of abiFilters that we no longer make use of, too.
Closes https://github.com/facebook/Sonar/pull/119

Reviewed By: priteshrnandgaonkar

Differential Revision: D8694537

Pulled By: passy

fbshipit-source-id: de246fbda99c02856fbc7806b78df2114cb82acb
2018-07-02 01:19:35 -07:00
Pascal Hartig
46df0b25a0 Set up Maven packaging and Bintray upload (#104)
Summary:
This make use of the the setup we have at Litho, which should make
it easier to keep them in sync.

It creates proper source jars, AARs (without bundling in unwanted
transitive deps) and POMs.
Closes https://github.com/facebook/Sonar/pull/104

Reviewed By: priteshrnandgaonkar

Differential Revision: D8638912

Pulled By: passy

fbshipit-source-id: ff4921c0683e9b6f859085b542ceae840a7e8291
2018-06-26 08:18:23 -07:00
Pritesh Nandgaonkar
110ff1c353 Package prebuilt libraries in android target (#105)
Summary:
package prebuilt libraries in `:android` rather than in sample app
Closes https://github.com/facebook/Sonar/pull/105

Reviewed By: passy

Differential Revision: D8639064

Pulled By: priteshrnandgaonkar

fbshipit-source-id: 4da20b046e2e55f0f605f91bf8809a4efd6848d9
2018-06-26 07:32:46 -07:00
Pritesh Nandgaonkar
edfdd64950 [WIP] gradle builds but app freezes, updated fbjni so file is the possible culprit 2018-06-21 16:27:18 +01:00
Pritesh Nandgaonkar
3a6d7928be Case sensitive path 2018-06-19 18:28:36 +01:00
Pritesh Nandgaonkar
88a6cff373 Fix merge conflicts 2018-06-19 15:31:33 +01:00
Pritesh Nandgaonkar
7405cd268a Merge branch 'master' of https://github.com/facebook/Sonar into Fix-Android 2018-06-19 14:13:59 +01:00