Added print-gnustep-make-help target

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@24514 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Nicola Pero 2007-02-12 22:59:16 +00:00
parent b9382fa220
commit 8f0c6fc005
5 changed files with 93 additions and 4 deletions

View file

@ -1,3 +1,11 @@
2007-02-12 Nicola Pero <nicola.pero@meta-innovation.com>
* gnustep-make-help: New file.
* GNUmakefile.in (MAKE_FILES): Added gnustep-make-help.
* rules.make (print-gnustep-make-help): New target
that prints gnustep-make-help.
* common.make: Mention the new target in the version message.
2007-02-12 Nicola Pero <nicola.pero@meta-innovation.com>
* configure.ac: Added check for $(info ...) function in GNU make.

View file

@ -92,7 +92,7 @@ MAKE_FILES = aggregate.make application.make bundle.make service.make \
documentation.make \
java-executable.template java-tool.make framework.make \
native-library.make spec-rules.template spec-debug-rules.template \
tar-exclude-list
tar-exclude-list gnustep-make-help
MASTER_MAKE_FILES = \
aggregate.make source-distribution.make rpm.make rules.make \

View file

@ -104,9 +104,7 @@ ifeq ($(_GNUSTEP_TOP_INVOCATION_DONE),)
# Print out a message with our version number and how to get help on
# targets and options.
ifeq ($(MAKE_WITH_INFO_FUNCTION),yes)
$(info This is gnustep-make $(GNUSTEP_MAKE_VERSION). )
# Uncomment the following line once we have the help target
# $(info This is gnustep-make $(GNUSTEP_MAKE_VERSION). Please type 'make print-gnustep-make-help' for help on targets and options.)
$(info This is gnustep-make $(GNUSTEP_MAKE_VERSION). Type 'make print-gnustep-make-help' for help.)
endif
# Sanity check on $PATH - NB: if PATH is wrong, we can't do certain things

73
gnustep-make-help Normal file
View file

@ -0,0 +1,73 @@
#
# gnustep-make-help
#
# GNUstep make help message
#
# Copyright (C) 2007 Free Software Foundation, Inc.
#
# Author: Nicola Pero <nicola.pero@meta-innovation.com
#
# This file is part of the GNUstep Makefile Package.
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# You should have received a copy of the GNU General Public
# License along with this library; see the file COPYING.LIB.
# If not, write to the Free Software Foundation,
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# This file is printed by the print-gnustep-make-help target.
# All lines beginning with '#' are stripped from the output.
#
gnustep-make is the GNUstep building system. It's a makefile library
that allows you to write powerful, robust and portable makefiles very
quickly. Traditionally it is used to build and install GNUstep software.
Most common targets:
make all (builds)
make install (builds and installs)
make uninstall (uninstalls)
make clean (deletes built files)
make distclean (deletes all built files)
make dist (creates a .tar.gz of the software sources)
Most common options that can be used with any of the targets:
messages=yes (prints verbosely all commands being executed)
debug=no (turns off generation of debug symbols)
strip=yes (strips executables and objects before installing)
shared=no (builds static executable and objects)
GNUSTEP_INSTALLATION_DOMAIN=SYSTEM/LOCAL/NETWORK/USER (installs
in the specified domain; the default is LOCAL)
You can use multiple of these options at the same time.
Examples:
make messages=yes
Builds the software and prints verbosely the commands that are
being used (useful for debugging)
make install GNUSTEP_INSTALLATION_DOMAIN=USER
Builds the software and installs it into your user domain (normally
in the GNUstep directory of your home directory). Note that you
need to source GNUstep.sh to be able to use software installed
in your user domain.
make install strip=yes messages=yes
Builds and installs the software and strips executables and object
files before installing. It also prints verbosely the commands
being executed.
If you think that this help message is missing something important,
please report it to http://wiki.gnustep.org/index.php/Report_Bugs.
# TODO:
# For more information, please check ... ?
#
# We really need a proper user-facing manual that explains how
# to use GNUmakefiles from a user/packager point of view. Then
# we could link it from here.
#

View file

@ -651,5 +651,15 @@ $(GNUSTEP_OBJ_DIR):
$(ECHO_NOTHING)cd $(GNUSTEP_BUILD_DIR); \
$(MKDIRS) ./$(GNUSTEP_OBJ_DIR_NAME)$(END_ECHO)
# Now the print targets.
# Print GNUstep make help. The sed command is used to strip all lines
# beginning with '#' from the file. It will find all lines that match
# the pattern ^#.* (which means that they have a '#' at the beginning
# of the line, followed by any number of chars), and applies to them
# the operation d, which means delete.
print-gnustep-make-help:
@(cat $(GNUSTEP_MAKEFILES)/gnustep-make-help | sed -e '/^#.*/d')
endif
# rules.make loaded