CMake generates SHARED library but not STATIC library

Viewed 1004

I am trying to generate a static library using CMAKE and Android Studio(2.3.2). Below is what my CMakeLists.txt looks like. I am unable to generate .a file, however when I change the library to SHARED, CMakeTestModule.so file gets generated when I do "Build->Rebuild Project". Is it required for me to add/set any flag for building STATIC libraries.

cmake_minimum_required(VERSION 3.4.1)
project (CMakeTestProject)

include_directories(
    src/main/cpp/
)

add_library(
    CMakeTestModule
    STATIC
    src/main/cpp/CMakeTestModule.cpp
)

add_executable(
    CMakeTestModule_test
    src/main/cpp/CMakeTestModule_test.cpp
)

target_link_libraries(CMakeTestModule_test CMakeTestModule)

This is what my build.gradle looks like:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 16
    buildToolsVersion "25.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 8

        externalNativeBuild {
            cmake {
                abiFilters 'armeabi'
            }
        }
    }

    externalNativeBuild {
        cmake {
            path 'CMakeLists.txt'
        }
    }

    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
}
1 Answers
Related