buildscript { repositories { google() jcenter() maven { url "https://plugins.gradle.org/m2/" } } dependencies { classpath "com.android.tools.build:gradle:3.4.1" classpath "gradle.plugin.org.ec4j.gradle:editorconfig-gradle-plugin:0.0.3" } } allprojects { repositories { google() jcenter() } } ext { clientVersionNumber = "4.2.0" mavenPackaging = "aar" mavenGroup = "net.zetetic" mavenArtifactId = "android-database-sqlcipher" mavenLocalRepositoryPrefix = "file://" if(project.hasProperty('publishLocal') && publishLocal.toBoolean()){ mavenSnapshotRepositoryUrl = "outputs/snapshot" mavenReleaseRepositoryUrl = "outputs/release" } else { mavenLocalRepositoryPrefix = "" mavenSnapshotRepositoryUrl = "https://oss.sonatype.org/content/repositories/snapshots" mavenReleaseRepositoryUrl = "https://oss.sonatype.org/service/local/staging/deploy/maven2" } if(project.hasProperty('publishSnapshot') && publishSnapshot.toBoolean()){ mavenVersionName = "${clientVersionNumber}-SNAPSHOT" } else { mavenVersionName = "${clientVersionNumber}" } if(project.hasProperty('nexusUsername')){ nexusUsername = "${nexusUsername}" } if(project.hasProperty('nexusPassword')){ nexusPassword = "${nexusPassword}" } mavenPomDescription = "SQLCipher for Android is a plugin to SQLite that provides full database encryption." mavenPomUrl = "https://www.zetetic.net/sqlcipher" mavenScmUrl = "https://github.com/sqlcipher/android-database-sqlcipher.git" mavenScmConnection = "scm:git:https://github.com/sqlcipher/android-database-sqlcipher.git" mavenScmDeveloperConnection = "scm:git:https://github.com/sqlcipher/android-database-sqlcipher.git" mavenLicenseUrl = "https://www.zetetic.net/sqlcipher/license/" mavenDeveloperName = "Zetetic Support" mavenDeveloperEmail = "support@zetetic.net" mavenDeveloperOrganization = "Zetetic LLC" mavenDeveloperUrl = "https://www.zetetic.net" minimumAndroidSdkVersion = 14 minimumAndroid64BitSdkVersion = 21 targetAndroidSdkVersion = 26 compileAndroidSdkVersion = 26 mainProjectName = "android-database-sqlcipher" nativeRootOutputDir = "${projectDir}/${mainProjectName}/src/main" androidNativeRootDir = "${nativeRootOutputDir}/external/android-libs" sqlcipherDir = "${projectDir}/${mainProjectName}/src/main/external/sqlcipher" opensslVersion = "1.1.1b" opensslDir = "${projectDir}/${mainProjectName}/src/main/external/openssl-${opensslVersion}" if(project.hasProperty('debugBuild') && debugBuild.toBoolean()) { otherSqlcipherCFlags = "" ndkBuildType="NDK_DEBUG=1" } else { otherSqlcipherCFlags = "-DLOG_NDEBUG" ndkBuildType="NDK_DEBUG=0" } sqlcipherCFlags = "-DSQLITE_HAS_CODEC " + "-DSQLITE_SOUNDEX " + "-DHAVE_USLEEP=1 " + "-DSQLITE_MAX_VARIABLE_NUMBER=99999 " + "-DSQLITE_TEMP_STORE=3 " + "-DSQLITE_THREADSAFE=1 " + "-DSQLITE_DEFAULT_JOURNAL_SIZE_LIMIT=1048576 " + "-DNDEBUG=1 " + "-DSQLITE_ENABLE_MEMORY_MANAGEMENT=1 " + "-DSQLITE_ENABLE_LOAD_EXTENSION " + "-DSQLITE_ENABLE_COLUMN_METADATA " + "-DSQLITE_ENABLE_UNLOCK_NOTIFY " + "-DSQLITE_ENABLE_RTREE " + "-DSQLITE_ENABLE_STAT3 " + "-DSQLITE_ENABLE_STAT4 " + "-DSQLITE_ENABLE_JSON1 " + "-DSQLITE_ENABLE_FTS3_PARENTHESIS " + "-DSQLITE_ENABLE_FTS4 " + "-DSQLITE_ENABLE_FTS5 " + "-DSQLCIPHER_CRYPTO_OPENSSL " + "-DSQLITE_ENABLE_DBSTAT_VTAB" } task clean(type: Delete) { delete rootProject.buildDir }