<?xml version="1.0" encoding="UTF-8"?>
<!--
  ANT Buildfile
 
  Copyright 2013-2023 MicroEJ Corp. All rights reserved.
  MicroEJ Corp. PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
-->
<project name="dynamic.feature.common">

	<!-- Input properties -->
	<fail unless="application.main.class"/>
	<fail unless="output.dir"/>
	<fail unless="platform.dir"/>

	<import file="init.xml"/>
	
	<property name="scripts.dir" location="${platform.dir}/scripts"/>
	<property name="tools.dir" location="${platform.dir}/tools"/>
	<loadproperties srcfile="${scripts.dir}/core.properties"/>
	
	
	<import file="activity.xml"/>
	<taskdef uri="antlib:com.is2t.elf.tool.stripper" resource="com/is2t/elf/tool/stripper/antlib.xml" classpath="${tools.dir}/elfStripper.jar"/>

	
	<extension-point name="feature/file-settings" depends="feature/file-settings-common" description="Sets file names/path to produce fo or fs3"/>
	<extension-point name="feature/make-artifacts" depends="mkdirs/feature" description="Creates feature artifacts"/>
	<extension-point name="feature/file-copy" depends="feature/make-artifacts" description="Copy created file to their target directory"/>
	<extension-point name="feature/build" depends="dyninit,feature/make-artifacts,feature/file-copy,finish" description=""/>
	
	<!--
		feature.output.name & feature.deploy.file are used by other launches.
		feature.output.name must be the real name of the builded feature.
		feature.deploy.file must be the absolute path of the builded feature.
	-->
	<target name="feature/file-settings-common">
		<property name="feature.output.basename" value="${application.main.class}"/>
		<basename property="feature.output.basename.without.ext" file="${feature.output.basename}" suffix=".fo"/>
		<property name="feature.extrafiles.output.dir" location="${application.output.dir}/feature"/>
	</target>
	
	<target name="mkdirs/feature" depends="feature/file-settings">
		<mkdir dir="${feature.extrafiles.output.dir}"/>	
	</target>
</project>