* GNUmakefile.in: install/uninstall new files; create full

target subdirectories.
	* GNUstep.sh.in: Add shell magic name.
	* MediaBook.sh: Likewise.
	* clean_cpu.sh: Likewise.
	* clean_os.sh: Likewise.
	* clean_vendor.sh: Likewise.

	* Add csh support.
	* GNUstep.csh.in: New file.
	* ld_lib_path.csh: New file.
	* configure.in: Add GNUstep.csh.in to output files
	* configure: Regenerate.

	* Add documentation support.
	* documentation.make: New file.
	* common.make: Define documentation variables.
	* rules.make: Pass documentation variables to sub-makes.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@2784 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
scottc 1998-04-06 03:01:59 +00:00
parent 84a2c9cf7b
commit 2eee512eb3
13 changed files with 389 additions and 9 deletions

View file

@ -4,6 +4,7 @@ config.cache
which_lib
GNUmakefile
GNUstep.sh
GNUstep.csh
config.h
config.status
openapp

View file

@ -1,3 +1,24 @@
Sun Apr 5 19:07:54 1998 Scott Christley <scottc@net-community.com>
* GNUmakefile.in: install/uninstall new files; create full
target subdirectories.
* GNUstep.sh.in: Add shell magic name.
* MediaBook.sh: Likewise.
* clean_cpu.sh: Likewise.
* clean_os.sh: Likewise.
* clean_vendor.sh: Likewise.
* Add csh support.
* GNUstep.csh.in: New file.
* ld_lib_path.csh: New file.
* configure.in: Add GNUstep.csh.in to output files
* configure: Regenerate.
* Add documentation support.
* documentation.make: New file.
* common.make: Define documentation variables.
* rules.make: Pass documentation variables to sub-makes.
Tue Mar 24 15:54:55 1998 Adam Fedor <fedor@ultra.doc.com>
* bundle.make (BUNDLE_RESOURCE_DIRS): Make all dirs a subdirectory

View file

@ -62,12 +62,21 @@ install: all
$(makedir)/$(GNUSTEP_TARGET_CPU) \
$(makedir)/$(GNUSTEP_TARGET_DIR) \
$(tooldir) \
$(prefix)/share
$(prefix)/share \
$(prefix)/Apps \
$(prefix)/Libraries/$(GNUSTEP_TARGET_DIR) \
$(prefix)/Headers/$(GNUSTEP_TARGET_DIR) \
$(prefix)/Tools/$(GNUSTEP_TARGET_DIR) \
$(prefix)/Library \
$(prefix)/Library/info \
$(prefix)/Library/PostScript \
$(prefix)/Library/man
$(INSTALL_PROGRAM) -m 755 which_lib $(makedir)/$(GNUSTEP_TARGET_DIR)
for f in config.guess config.sub install-sh mkinstalldirs \
GNUstep.sh MediaBook.sh clean_cpu.sh clean_os.sh \
clean_vendor.sh cpu.sh ld_lib_path.sh os.sh \
transform_paths.sh vendor.sh ; do \
transform_paths.sh vendor.sh \
GNUstep.csh ld_lib_path.csh ; do \
$(INSTALL_PROGRAM) -m 755 $$f $(makedir); \
done
$(INSTALL_PROGRAM) -m 755 openapp $(tooldir); \
@ -75,7 +84,8 @@ install: all
for f in aggregate.make application.make bundle.make \
common.make brain.make library.make rules.make target.make \
tool.make test-library.make names.make objc.make \
test-application.make test-tool.make MediaBook.func; do \
test-application.make test-tool.make \
documentation.make MediaBook.func; do \
$(INSTALL_DATA) $$f $(makedir); \
done
$(INSTALL_DATA) config.site $(prefix)/share
@ -86,7 +96,8 @@ uninstall:
for f in config.guess config.sub install-sh mkinstalldirs \
GNUstep.sh MediaBook.sh clean_cpu.sh clean_os.sh \
clean_vendor.sh cpu.sh ld_lib_path.sh os.sh \
transform_paths.sh vendor.sh ; do \
transform_paths.sh vendor.sh \
GNUstep.csh ld_lib_path.csh ; do \
rm -f $(makedir)/$$f; \
done
rm -f $(tooldir)/openapp; \
@ -94,7 +105,8 @@ uninstall:
for f in aggregate.make application.make bundle.make \
common.make brain.make library.make rules.make target.make \
tool.make test-library.make names.make objc.make \
test-application.make test-tool.make MediaBook.func; do \
test-application.make test-tool.make \
documentation.make MediaBook.func; do \
rm -f $(makedir)/$$f; \
done
rm -f $(prefix)/share/config.site
@ -107,7 +119,7 @@ distclean: clean
rm -f GNUmakefile config.make
rm -f config.cache config.log config.status
generated-files: GNUmakefile GNUstep.sh config.h config.make debugapp openapp
generated-files: GNUmakefile GNUstep.sh GNUstep.csh config.h config.make debugapp openapp
GNUmakefile: GNUmakefile.in config.status
$(SHELL) config.status
@ -115,6 +127,9 @@ GNUmakefile: GNUmakefile.in config.status
GNUstep.sh: GNUstep.sh.in
$(SHELL) config.status
GNUstep.csh: GNUstep.csh.in
$(SHELL) config.status
config.h: config.h.in
$(SHELL) config.status

64
GNUstep.csh.in Executable file
View file

@ -0,0 +1,64 @@
#!/bin/csh
#
# GNUstep.csh.in
#
# Shell initialization for the GNUstep environment.
#
# Copyright (C) 1998 Free Software Foundation, Inc.
#
# Author: Scott Christley <scottc@net-community.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,
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
#
# Set the GNUstep system root and local root
#
setenv GNUSTEP_SYSTEM_ROOT @prefix@
setenv LIBRARY_COMBO @ac_cv_library_combo@
setenv GNUSTEP_LOCAL_ROOT @prefix@/Local
setenv GNUSTEP_USER_ROOT ~/GNUstep
#
# Determine the host information
#
setenv GNUSTEP_HOST `$GNUSTEP_SYSTEM_ROOT/Makefiles/config.guess`
setenv GNUSTEP_HOST_CPU `$GNUSTEP_SYSTEM_ROOT/Makefiles/cpu.sh $GNUSTEP_HOST`
setenv GNUSTEP_HOST_VENDOR `$GNUSTEP_SYSTEM_ROOT/Makefiles/vendor.sh $GNUSTEP_HOST`
setenv GNUSTEP_HOST_OS `$GNUSTEP_SYSTEM_ROOT/Makefiles/os.sh $GNUSTEP_HOST`
# Clean the host
setenv GNUSTEP_HOST_CPU `$GNUSTEP_SYSTEM_ROOT/Makefiles/clean_cpu.sh $GNUSTEP_HOST_CPU`
setenv GNUSTEP_HOST_VENDOR `$GNUSTEP_SYSTEM_ROOT/Makefiles/clean_vendor.sh $GNUSTEP_HOST_VENDOR`
setenv GNUSTEP_HOST_OS `$GNUSTEP_SYSTEM_ROOT/Makefiles/clean_os.sh $GNUSTEP_HOST_OS`
#
# Add the GNUstep tools directories to the path
#
setenv PATH $GNUSTEP_SYSTEM_ROOT/Tools:$PATH
setenv PATH $GNUSTEP_SYSTEM_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$PATH
setenv PATH $GNUSTEP_SYSTEM_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS:$PATH
setenv PATH $GNUSTEP_LOCAL_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$PATH
setenv PATH $GNUSTEP_LOCAL_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS:$PATH
setenv PATH $GNUSTEP_USER_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS/$LIBRARY_COMBO:$PATH
setenv PATH $GNUSTEP_USER_ROOT/Tools/$GNUSTEP_HOST_CPU/$GNUSTEP_HOST_OS:$PATH
source $GNUSTEP_SYSTEM_ROOT/Makefiles/ld_lib_path.csh
#
# Perform any user initialization
#
if ( -e ~/.GNUstep/GNUstep.csh ) then
. ~/.GNUstep/GNUstep.csh
endif

View file

@ -1,3 +1,4 @@
#!/bin/sh
#
# GNUstep.sh.in
#

View file

@ -1,3 +1,4 @@
#!/bin/sh
#
# MediaBook.sh
#

View file

@ -92,6 +92,9 @@ GNUSTEP_LIBRARIES_ROOT = $(GNUSTEP_INSTALLATION_DIR)/Libraries
GNUSTEP_TARGET_LIBRARIES = $(GNUSTEP_LIBRARIES_ROOT)/$(GNUSTEP_TARGET_DIR)
GNUSTEP_LIBRARIES = $(GNUSTEP_TARGET_LIBRARIES)/$(LIBRARY_COMBO)
GNUSTEP_RESOURCES = $(GNUSTEP_LIBRARIES_ROOT)/Resources
GNUSTEP_DOCUMENTATION = $(GNUSTEP_INSTALLATION_DIR)/Library
GNUSTEP_DOCUMENTATION_MAN = $(GNUSTEP_DOCUMENTATION)/man
GNUSTEP_DOCUMENTATION_INFO = $(GNUSTEP_DOCUMENTATION)/info
# The default name of the makefile to be used in recursive invocations of make
ifeq ($(MAKEFILE_NAME),)
@ -281,3 +284,17 @@ ARCH_OBJ_DIR = \
endif
GNUSTEP_OBJ_DIR = $(GNUSTEP_OBJ_PREFIX)/$(ARCH_OBJ_DIR)/$(LIBRARY_COMBO)
#
# Common variables for building documentation
#
GNUSTEP_MAKEINFO = makeinfo
GNUSTEP_MAKEINFO_FLAGS = -D NO-TEXI2HTML --no-header
GNUSTEP_MAKETEXT = makeinfo
GNUSTEP_MAKETEXT_FLAGS = -D NO-TEXI2HTML -D TEXT-ONLY --no-header --no-split
GNUSTEP_TEXI2DVI = texi2dvi
GNUSTEP_TEXI2DVI_FLAGS =
GNUSTEP_TEXI2HTML = texi2html
GNUSTEP_TEXI2HTML_FLAGS = -split_chapter -expandinfo
GNUSTEP_DVIPS = dvips
GNUSTEP_DVIPS_FLAGS =

6
configure vendored
View file

@ -1577,7 +1577,8 @@ done
ac_given_srcdir=$srcdir
ac_given_INSTALL="$INSTALL"
trap 'rm -fr `echo "config.h config.make openapp debugapp GNUmakefile GNUstep.sh config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
trap 'rm -fr `echo "config.h config.make openapp debugapp GNUmakefile
GNUstep.sh GNUstep.csh config.h" | sed "s/:[^ ]*//g"` conftest*; exit 1' 1 2 15
EOF
cat >> $CONFIG_STATUS <<EOF
@ -1673,7 +1674,8 @@ EOF
cat >> $CONFIG_STATUS <<EOF
CONFIG_FILES=\${CONFIG_FILES-"config.h config.make openapp debugapp GNUmakefile GNUstep.sh"}
CONFIG_FILES=\${CONFIG_FILES-"config.h config.make openapp debugapp GNUmakefile
GNUstep.sh GNUstep.csh"}
EOF
cat >> $CONFIG_STATUS <<\EOF
for ac_file in .. $CONFIG_FILES; do if test "x$ac_file" != x..; then

View file

@ -109,5 +109,6 @@ AC_SUBST(ac_cv_library_combo)
#--------------------------------------------------------------------
# Produce the output files
#--------------------------------------------------------------------
AC_OUTPUT(config.h config.make openapp debugapp GNUmakefile GNUstep.sh,
AC_OUTPUT(config.h config.make openapp debugapp GNUmakefile
GNUstep.sh GNUstep.csh,
chmod a+x openapp debugapp)

188
documentation.make Normal file
View file

@ -0,0 +1,188 @@
#
# documentation.make
#
# Makefile rules to build GNUstep-based texinfo documentation.
#
# Copyright (C) 1998 Free Software Foundation, Inc.
#
# Author: Scott Christley <scottc@net-community.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,
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
# prevent multiple inclusions
ifeq ($(DOCUMENTATION_MAKE_LOADED),)
DOCUMENTATION_MAKE_LOADED=yes
#
# Include in the common makefile rules
#
include $(GNUSTEP_MAKEFILES)/rules.make
#
# The names of the documents are in the DOCUMENT_NAME variable.
# These final documents will be generated in info, dvi, ps, and html output.
#
# The names of text documents are in the DOCUMENT_TEXT_NAME variable.
#
# The main file for text document is in the xxx_TEXT_MAIN variable.
# The Texinfo files that needs pre-processing are in xxx_TEXI_FILES
#
# Where xxx is the name of the document
#
ifeq ($(INTERNAL_doc_NAME)$(INTERNAL_textdoc_NAME),)
# This part is included the first time make is invoked.
internal-all:: $(DOCUMENT_NAME:=.all.doc.variables) \
$(DOCUMENT_TEXT_NAME:=.all.textdoc.variables)
internal-install:: all $(DOCUMENT_NAME:=.install.doc.variables) \
$(DOCUMENT_TEXT_NAME:=.install.textdoc.variables)
internal-uninstall:: $(DOCUMENT_NAME:=.uninstall.doc.variables) \
$(DOCUMENT_TEXT_NAME:=.uninstall.textdoc.variables)
internal-clean:: $(DOCUMENT_NAME:=.clean.doc.variables) \
$(DOCUMENT_TEXT_NAME:=.clean.textdoc.variables)
internal-distclean:: $(DOCUMENT_NAME:=.distclean.doc.variables) \
$(DOCUMENT_TEXT_NAME:=.distclean.textdoc.variables)
#$(DOCUMENT_NAME):
# @$(MAKE) -f $(MAKEFILE_NAME) --no-print-directory \
# $@.all.doc.variables
else
# This part gets included the second time make is invoked.
#
# Internal targets
#
#
# Compilation targets
#
internal-doc-all:: before-all before-$(TARGET)-all \
$(INTERNAL_doc_NAME).info \
$(INTERNAL_doc_NAME).ps \
$(INTERNAL_doc_NAME).html \
after-$(TARGET)-all after-all
internal-textdoc-all:: before-all before-$(TARGET)-all \
$(INTERNAL_textdoc_NAME) \
after-$(TARGET)-all after-all
$(INTERNAL_doc_NAME).info: $(TEXI_FILES)
for i in $(TEXI_FILES); do \
sed -e 's,@email{\([^}]*\)},<\1>,g' \
$$i \
| sed -e 's,@url{\([^}]*\)},@samp{\1},g' \
> `basename $$i .tmpl.texi`.texi ; \
done
$(GNUSTEP_MAKEINFO) $(GNUSTEP_MAKEINFO_FLAGS) \
-o $@ $(INTERNAL_doc_NAME).texi
$(INTERNAL_doc_NAME).dvi: $(TEXI_FILES)
for i in $(TEXI_FILES); do \
cp $$i `basename $$i .tmpl.texi`.texi ; \
done
$(GNUSTEP_TEXI2DVI) $(GNUSTEP_TEXI2DVI_FLAGS) $(INTERNAL_doc_NAME).texi
$(INTERNAL_doc_NAME).ps: $(INTERNAL_doc_NAME).dvi
$(GNUSTEP_DVIPS) $(GNUSTEP_DVIPS_FLAGS) \
$(INTERNAL_doc_NAME).dvi -o $@
$(INTERNAL_doc_NAME).html: $(TEXI_FILES)
for i in $(TEXI_FILES); do \
sed -e 's,@email{\([^}]*\)},<A HREF="mailto:\1">\1</A>,g' \
$$i \
| sed -e 's,@url{\([^}]*\)},<A HREF="\1">\1</A>,g' \
| sed -e 's,^ *$$,@br{},g' \
> `basename $$i .tmpl.texi`.texi ; \
done
$(GNUSTEP_TEXI2HTML) $(GNUSTEP_TEXI2HTML_FLAGS) \
$(INTERNAL_doc_NAME).texi
$(INTERNAL_textdoc_NAME): $(TEXI_FILES) $(TEXT_MAIN)
for i in $(TEXI_FILES) $(TEXT_MAIN); do \
sed -e 's,@email{\([^}]*\)},<\1>,g' \
$$i \
| sed -e 's,@url{\([^}]*\)},@samp{\1},g' \
> `basename $$i .tmpl.texi`.texi ; \
done
$(GNUSTEP_MAKETEXT) $(GNUSTEP_MAKETEXT_FLAGS) \
-o $@ `basename $(TEXT_MAIN) .tmpl.texi`.texi
before-$(TARGET)-all::
after-$(TARGET)-all::
#
# Install and uninstall targets
#
internal-doc-install:: internal-install-dirs
internal-textdoc-install::
internal-install-dirs::
$(GNUSTEP_MAKEFILES)/mkinstalldirs \
$(GNUSTEP_DOCUMENTATION) \
internal-doc-uninstall::
internal-textdoc-uninstall::
#
# Cleaning targets
#
internal-doc-clean::
rm -f $(INTERNAL_doc_NAME).aux
rm -f $(INTERNAL_doc_NAME).cp
rm -f $(INTERNAL_doc_NAME).cps
rm -f $(INTERNAL_doc_NAME).dvi
rm -f $(INTERNAL_doc_NAME).fn
rm -f $(INTERNAL_doc_NAME).info
rm -f $(INTERNAL_doc_NAME).ky
rm -f $(INTERNAL_doc_NAME).log
rm -f $(INTERNAL_doc_NAME).pg
rm -f $(INTERNAL_doc_NAME).ps
rm -f $(INTERNAL_doc_NAME).toc
rm -f $(INTERNAL_doc_NAME).tp
rm -f $(INTERNAL_doc_NAME).vr
rm -f $(INTERNAL_doc_NAME).vrs
rm -f $(INTERNAL_doc_NAME)_*.html
for i in $(TEXI_FILES); do \
rm -f `basename $$i .tmpl.texi`.texi ; \
done
internal-textdoc-clean::
rm -f $(INTERNAL_textdoc_NAME)
for i in $(TEXI_FILES) $(TEXT_MAIN); do \
rm -f `basename $$i .tmpl.texi`.texi ; \
done
internal-doc-distclean::
internal-textdoc-distclean::
#
# Testing targets
#
internal-doc-check::
internal-textdoc-check::
endif
endif
# documentation.make loaded

66
ld_lib_path.csh Executable file
View file

@ -0,0 +1,66 @@
#!/bin/csh
#
# ld_lib_path.csh
#
# Return the name of the environment variable for the operating
# system that is used by the dynamic loader.
#
# Copyright (C) 1998 Free Software Foundation, Inc.
#
# Author: Scott Christley <scottc@net-community.com>
# Author: Ovidiu Predescu <ovidiu@net-community.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,
# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# The first (and only) parameter to this script is the canonical
# operating system name.
set last_path_part="Libraries/${GNUSTEP_HOST_CPU}/${GNUSTEP_HOST_OS}/${LIBRARY_COMBO}"
set host_os=${GNUSTEP_HOST_OS}
if ( "${host_os}" == "" ) then
set host_os=${1}
endif
switch ( "${host_os}" )
case *nextstep4* :
setenv DYLD_LIBRARY_PATH "${GNUSTEP_USER_ROOT}/${last_path_part}:${GNUSTEP_LOCAL_ROOT}/${last_path_part}:${GNUSTEP_SYSTEM_ROOT}/${last_path_part}:${DYLD_LIBRARY_PATH}"
if ( "${additional_library_paths}" != "" ) then
foreach dir (${additional_library_paths})
set additional="${additional}${dir}:"
end
endif
if ( "${?additional}" == "1" ) then
setenv DYLD_LIBRARY_PATH="${additional}${DYLD_LIBRARY_PATH}"
endif
breaksw
case * :
setenv LD_LIBRARY_PATH "${GNUSTEP_USER_ROOT}/${last_path_part}:${GNUSTEP_LOCAL_ROOT}/${last_path_part}:${GNUSTEP_SYSTEM_ROOT}/${last_path_part}:${LD_LIBRARY_PATH}"
if ( "${additional_library_paths}" != ) then
foreach dir (${additional_library_paths})
set additional="${additional}${dir}:"
end
endif
if ( "${?additional}" == "1" ) then
setenv LD_LIBRARY_PATH="${additional}${LD_LIBRARY_PATH}"
endif
breaksw
endsw

View file

@ -180,6 +180,8 @@ $(GNUSTEP_OBJ_DIR)/%${OEXT} : %.m
C_FILES="$($*_C_FILES)" \
PSWRAP_FILES="$($*_PSWRAP_FILES)" \
HEADER_FILES="$($*_HEADER_FILES)" \
TEXI_FILES="$($*_TEXI_FILES)" \
TEXT_MAIN="$($*_TEXT_MAIN)" \
HEADER_FILES_DIR="$($*_HEADER_FILES_DIR)" \
HEADER_FILES_INSTALL_DIR="$($*_HEADER_FILES_INSTALL_DIR)" \
RESOURCE_FILES="$($*_RESOURCE_FILES)" \

View file

@ -1,4 +1,5 @@
#!/bin/sh
#
# transform_paths.sh
#
# Copyright (C) 1997 Free Software Foundation, Inc.