code: public static String[] getNdkArchitectures( final String ndkArchitectures, final String applicationMakefile,
                                                  final File basedir )
          throws MojoExecutionException
      {
          // if there is a specified ndk architecture, return it
          if ( ndkArchitectures != null )
          {
              return ndkArchitectures.split( " " );
          }
  
          // if there is no application makefile specified, let's use the default one
          String applicationMakefileToUse = applicationMakefile;
          if ( applicationMakefileToUse == null )
          {
              applicationMakefileToUse = "jni/Application.mk";
          }
  
          // now let's see if the application file exists
          File appMK = new File( basedir, applicationMakefileToUse );
          if ( appMK.exists() )
          {
              String[] foundNdkArchitectures = getAppAbi( appMK );
              if ( foundNdkArchitectures != null )
              {
                  return foundNdkArchitectures;
              }
          }
  
          // return a default ndk architecture
          return new String[] { "armeabi" };
      }
docs: Attempts to extract, from various sources, the applicable list of NDK architectures to support
  as part of the build.
  <br>
  <br>
  It retrieves the list from the following places:
  <ul>
  <li>ndkArchitecture parameter</li>
  <li>projects Application.mk - currently only a single architecture is supported by this method</li>
  </ul>
  
  
  @param ndkArchitectures Space separated list of architectures.  This may be from configuration or otherwise
  @param applicationMakefile The makefile (Application.mk) to retrieve the list from.
  @param basedir Directory the build is running from (to resolve files)
  
  @return List of architectures to be supported by build.
  
  @throws MojoExecutionException