2015-05-06 16:19:54 +02:00
|
|
|
############################################################################
|
|
|
|
# apps/examples/hello/Make.defs
|
|
|
|
#
|
2020-10-31 15:39:01 +01:00
|
|
|
# Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
# contributor license agreements. See the NOTICE file distributed with
|
|
|
|
# this work for additional information regarding copyright ownership. The
|
|
|
|
# ASF licenses this file to you under the Apache License, Version 2.0 (the
|
|
|
|
# "License"); you may not use this file except in compliance with the
|
|
|
|
# License. You may obtain a copy of the License at
|
2015-05-06 16:19:54 +02:00
|
|
|
#
|
2020-10-31 15:39:01 +01:00
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
2015-05-06 16:19:54 +02:00
|
|
|
#
|
2020-10-31 15:39:01 +01:00
|
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
|
|
# License for the specific language governing permissions and limitations
|
|
|
|
# under the License.
|
2015-05-06 16:19:54 +02:00
|
|
|
#
|
|
|
|
############################################################################
|
|
|
|
|
Squashed commit of the following:
Merged in masayuki2009/nuttx.apps/loadable_app (pull request #148)
loadable app support
* apps: Introduce a build system for loadable apps for nsh.
This PR consits of following changes. (NOTE: Changes to each
application will be provided separately)
apps/nshlib/Kconfig:
Add 'option modules' to NSH_FILE_APPS so that a user can change
an application configuration to tristate (y/n/m)
apps/Make.defs:
Override COMPILE and COMPILEXX macros to compile loadable apps.
To make loadable apps, -DLOADABLE_APP is added to the flags.
Also, introduce ELFLD to link a lodable app.
Please note that the variable 'LOADABLE' must be defined in
each application Makefile if you want to make a loadable app.
apps/Application.mk:
Add .build target in case of 'LOADABLE=y' which is used to
link a final loadable application and install the app to
apps/bin.
apps/Makefile:
Add SYMTABSRC and SYMTABOBJ variables for loadable apps which
will be generated under the apps directory.
Add make_symbols target which will be called when all applications
are installed to generate symtab_app.c which is used for
nsh to inform symbol information to the NuttX kernel.
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* apps/examples/hello: Apply changes to support a lodable app.
Kconfig:
Change the application state from bool to tristate
Make.defs:
Change the condition to build. By default, the application is
not selected (i.e. 'n'), so if other states (i.e. y/m) are
selected, the application will be compiled.
Makefile:
If the application is specified to 'm', the variable 'LOADABLE'
must be defined here. Also note that other variables (PRIORITY
and STACKSIZE) can only be used for built-in apps.
hello_main.c
Add LOADABLE_APP condition to main().
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
* apps/examples/helloxx: Apply changes to support a lodable app.
Kconfig:
Change the application state from bool to tristate
Make.defs:
Change the condition to build. By default, the application is
not selected (i.e. 'n'), so if other states (i.e. y/m) are
selected, the application will be compiled.
Makefile:
If the application is specified to 'm', the variable 'LOADABLE'
must be defined here. Also note that other variables (PRIORITY
and STACKSIZE) can only be used for built-in apps.
helloxx_main.c
Add LOADABLE_APP condition to main().
Signed-off-by: Masayuki Ishikawa <Masayuki.Ishikawa@jp.sony.com>
Approved-by: GregoryN <gnutt@nuttx.org>
2018-08-03 20:05:01 +02:00
|
|
|
ifneq ($(CONFIG_EXAMPLES_HELLO),)
|
2019-10-17 19:33:59 +02:00
|
|
|
CONFIGURED_APPS += $(APPDIR)/examples/hello
|
2015-05-06 16:19:54 +02:00
|
|
|
endif
|