# fss-0005 iki-0002
#
# See the dependencies file for details on the FLL packages that are needed.
#
# The data/build/stand_alone/config.h should be copied to sources/c/config.h.
#
# This requires that the sources structure to be changed.
# The monolithic sources from within the 'fll-0.8.x/source/c/' directory must be copied over into the sources directory under the directory 'sources/c/fll/'.
#
# This can be built via:
#   fake -U build/stand_alone/ clean make
#

settings:
  fail exit
  modes android clang coverage debug fanalyzer flex_arrays gcc pinephone test thread threadless

  environment PATH LD_LIBRARY_PATH
  environment LANG LC_ALL LC_COLLATE LC_CTYPE LC_FASTMSG LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME LOCPATH NLSPATH

main:
  build settings.controller
  build settings.init

main_controller:
  build settings.controller

main_init:
  build settings.init

install:
  shell ./install.sh parameter:'work' parameter:'verbosity' parameter:'color' -s data/build/stand_alone/settings.controller
  shell ./install.sh parameter:'work' parameter:'verbosity' parameter:'color' -s data/build/stand_alone/settings.init

install_controller:
  shell ./install.sh parameter:'work' parameter:'verbosity' parameter:'color' -s data/build/stand_alone/settings.controller

install_init:
  shell ./install.sh parameter:'work' parameter:'verbosity' parameter:'color' -s data/build/stand_alone/settings.init

help:
  print
  print context:'title'Fakefile Options for the Controller and the Init Programs.context:'reset'

  print
  print The following operations are available\:
  print "  - context:'notable'help:context:'reset'               Perform the help operation, printing this message."
  print "  - context:'notable'install:context:'reset'            A helper operation that calls the ./install.sh script for both the controller and init programs."
  print "  - context:'notable'install_controller:context:'reset' A helper operation that calls the ./install.sh script for the controller program."
  print "  - context:'notable'install_init:context:'reset'       A helper operation that calls the ./install.sh script for the init program."
  print "  - context:'notable'main:context:'reset'               Compilation using the build settings mode for both the controller and init programs (default)."
  print "  - context:'notable'main_controller:context:'reset'    Compilation using the build settings mode for the controller program."
  print "  - context:'notable'main_init:context:'reset'          Compilation using the build settings mode for the init program."

  print
  print The context:'notable'install[context]:'reset' operation supports the context:'notable'work[context]:'reset', context:'notable'verbosity[context]:'reset', and context:'notable'color[context]:'reset' parameters.
