From b3fb32aa5df19b1051ced9aaf10a287e276f071a Mon Sep 17 00:00:00 2001 From: nanbor Date: Tue, 11 Jul 2000 19:58:01 +0000 Subject: ChangeLogTag:Tue Jul 11 14:47:48 2000 Chris Kohlhoff --- ChangeLog | 34 +++++++++++++++++++ ChangeLogs/ChangeLog-02a | 34 +++++++++++++++++++ ChangeLogs/ChangeLog-03a | 34 +++++++++++++++++++ ace/Makefile.bor | 25 ++++++++++++++ ace/OS.h | 6 ++++ ace/OS.i | 19 +++++++++++ ace/OS_String.h | 6 ++++ ace/ace_wchar.h | 5 +++ ace/config-win32-borland.h | 5 +-- ace/config-win32-common.h | 5 +++ include/makeinclude/build_core_exe.bor | 2 ++ include/makeinclude/build_core_library.bor | 2 ++ include/makeinclude/build_dll.bor | 15 ++++----- include/makeinclude/build_exe.bor | 18 ++++------- include/makeinclude/build_lib.bor | 17 ++++------ include/makeinclude/clean.bor | 20 ++++++++++++ include/makeinclude/install.bor | 37 +++++++++++++++++++++ include/makeinclude/make_flags.bor | 7 +++- include/makeinclude/outputdir.bor | 52 ++++++++++++++++++++++++++++++ include/makeinclude/recurse.bor | 31 ++++++++++++++++++ 20 files changed, 339 insertions(+), 35 deletions(-) create mode 100644 include/makeinclude/clean.bor create mode 100644 include/makeinclude/install.bor diff --git a/ChangeLog b/ChangeLog index 922c133cecb..dce129aee27 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,37 @@ +Tue Jul 11 14:47:48 2000 Chris Kohlhoff + + * ace/config-win32-common.h: + Use default value of 0 for ACE_USE_RCSID on Win32 since RCS IDs + should probably not be required on this platform. + + * include/makeinclude/build_core_exe.bor: + * include/makeinclude/build_core_library.bor: + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/make_flags.bor: + * include/makeinclude/outputdir.bor: + * include/makeinclude/recurse.bor: + * include/makeinclude/install.bor: + * ace/Makefile.bor: + Added support for 'make install'. + + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/clean.bor: + Changed clean target so that files generated by the IDL compiler + are removed. + + * ace/ace_wchar.h: + * ace/config-win32-borland.h: + * ace/OS.h: + * ace/OS_String.h: + * ace/OS.i: + Bring certain types and functions into the global namespace. This + is necessary so that the ACE headers will work the same regardless + of any standard C++ headers that may be included beforehand. + Tue Jul 11 14:21:51 2000 Steve Huston * ace/Log_Msg.cpp (ACE_Log_Msg::log): Added an ACE_Errno_Guard to diff --git a/ChangeLogs/ChangeLog-02a b/ChangeLogs/ChangeLog-02a index 922c133cecb..dce129aee27 100644 --- a/ChangeLogs/ChangeLog-02a +++ b/ChangeLogs/ChangeLog-02a @@ -1,3 +1,37 @@ +Tue Jul 11 14:47:48 2000 Chris Kohlhoff + + * ace/config-win32-common.h: + Use default value of 0 for ACE_USE_RCSID on Win32 since RCS IDs + should probably not be required on this platform. + + * include/makeinclude/build_core_exe.bor: + * include/makeinclude/build_core_library.bor: + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/make_flags.bor: + * include/makeinclude/outputdir.bor: + * include/makeinclude/recurse.bor: + * include/makeinclude/install.bor: + * ace/Makefile.bor: + Added support for 'make install'. + + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/clean.bor: + Changed clean target so that files generated by the IDL compiler + are removed. + + * ace/ace_wchar.h: + * ace/config-win32-borland.h: + * ace/OS.h: + * ace/OS_String.h: + * ace/OS.i: + Bring certain types and functions into the global namespace. This + is necessary so that the ACE headers will work the same regardless + of any standard C++ headers that may be included beforehand. + Tue Jul 11 14:21:51 2000 Steve Huston * ace/Log_Msg.cpp (ACE_Log_Msg::log): Added an ACE_Errno_Guard to diff --git a/ChangeLogs/ChangeLog-03a b/ChangeLogs/ChangeLog-03a index 922c133cecb..dce129aee27 100644 --- a/ChangeLogs/ChangeLog-03a +++ b/ChangeLogs/ChangeLog-03a @@ -1,3 +1,37 @@ +Tue Jul 11 14:47:48 2000 Chris Kohlhoff + + * ace/config-win32-common.h: + Use default value of 0 for ACE_USE_RCSID on Win32 since RCS IDs + should probably not be required on this platform. + + * include/makeinclude/build_core_exe.bor: + * include/makeinclude/build_core_library.bor: + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/make_flags.bor: + * include/makeinclude/outputdir.bor: + * include/makeinclude/recurse.bor: + * include/makeinclude/install.bor: + * ace/Makefile.bor: + Added support for 'make install'. + + * include/makeinclude/build_dll.bor: + * include/makeinclude/build_exe.bor: + * include/makeinclude/build_lib.bor: + * include/makeinclude/clean.bor: + Changed clean target so that files generated by the IDL compiler + are removed. + + * ace/ace_wchar.h: + * ace/config-win32-borland.h: + * ace/OS.h: + * ace/OS_String.h: + * ace/OS.i: + Bring certain types and functions into the global namespace. This + is necessary so that the ACE headers will work the same regardless + of any standard C++ headers that may be included beforehand. + Tue Jul 11 14:21:51 2000 Steve Huston * ace/Log_Msg.cpp (ACE_Log_Msg::log): Added an ACE_Errno_Guard to diff --git a/ace/Makefile.bor b/ace/Makefile.bor index 96cfe53ddc6..22660bb16bc 100644 --- a/ace/Makefile.bor +++ b/ace/Makefile.bor @@ -197,4 +197,29 @@ CFLAGS = $(ACE_CFLAGS) -DACE_BUILD_DLL -DACE_OS_BUILD_DLL CPPDIR = . +INCDIR_NAME = ace +INCLUDES = \ + *.h *.i *.inl *_T.cpp \ + Acceptor.cpp \ + Asynch_Acceptor.cpp \ + Auto_Ptr.cpp \ + Connector.cpp \ + CORBA_Ref.cpp \ + Dynamic_Service.cpp \ + Free_List.cpp \ + Future.cpp \ + Future_Set.cpp \ + LOCK_SOCK_Acceptor.cpp \ + Managed_Object.cpp \ + Map_Manager.cpp \ + Module.cpp \ + RB_Tree.cpp \ + Singleton.cpp \ + Stream.cpp \ + Stream_Modules.cpp \ + Svc_Handler.cpp \ + Timer_Queue_Adapters.cpp \ + Typed_SV_Message.cpp \ + Typed_SV_Message_Queue.cpp + !include <$(ACE_ROOT)\include\makeinclude\build_core_library.bor> diff --git a/ace/OS.h b/ace/OS.h index 38be3429b10..e7a4dc7f95e 100644 --- a/ace/OS.h +++ b/ace/OS.h @@ -1170,6 +1170,12 @@ extern "C" pthread_t pthread_self (void); # endif /* VXWORKS */ # endif /* ACE_LACKS_SYSTIME_H */ +# if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \ + (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0) +using std::time_t; +using std::tm; +# endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */ + # if !defined (ACE_HAS_POSIX_TIME) && !defined (ACE_PSOS) // Definition per POSIX. typedef struct timespec diff --git a/ace/OS.i b/ace/OS.i index a1814b88e31..1a7d6bc87a1 100644 --- a/ace/OS.i +++ b/ace/OS.i @@ -103,6 +103,25 @@ extern "C" void * _dlsym (void *, const char *); # include /**/ #endif /* ACE_HAS_SYSENT_H_*/ +#if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \ + (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0) +using std::bsearch; +using std::qsort; +# if defined (ACE_WIN32) +using std::_tzset; +using std::_timezone; +# else +using std::tzset; +using std::timezone; +# endif +using std::difftime; +using std::ctime; +using std::localtime; +using std::gmtime; +using std::asctime; +using std::strftime; +#endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */ + #if defined (ACE_HAS_SVR4_GETTIMEOFDAY) # if !defined (m88k) && !defined (SCO) extern "C" int gettimeofday (struct timeval *tp, void * = 0); diff --git a/ace/OS_String.h b/ace/OS_String.h index 91e90c517b6..11087d94c36 100644 --- a/ace/OS_String.h +++ b/ace/OS_String.h @@ -29,6 +29,12 @@ #include "ace/OS_Export.h" #include /**/ +#if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \ + (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0) +using std::size_t; +using std::wint_t; +#endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */ + class ACE_OS_Export ACE_OS_String // = TITLE // This class is a wrapper for string operations diff --git a/ace/ace_wchar.h b/ace/ace_wchar.h index a75851d0297..2d37a6d453c 100644 --- a/ace/ace_wchar.h +++ b/ace/ace_wchar.h @@ -81,6 +81,11 @@ typedef char TCHAR; # include /**/ #endif +#if defined (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB) && \ + (ACE_USES_STD_NAMESPACE_FOR_STDC_LIB != 0) +using std::size_t; +#endif /* ACE_USES_STD_NAMESPACE_FOR_STDC_LIB */ + // Define the unicode/wchar related macros correctly diff --git a/ace/config-win32-borland.h b/ace/config-win32-borland.h index 72563d92f0d..3d94c03b26e 100644 --- a/ace/config-win32-borland.h +++ b/ace/config-win32-borland.h @@ -66,12 +66,9 @@ # define ACE_UINT64_FORMAT_SPECIFIER ACE_TEXT ("%Lu") # define ACE_INT64_FORMAT_SPECIFIER ACE_TEXT ("%Ld") # define ACE_USES_STD_NAMESPACE_FOR_STDCPP_LIB 1 +# define ACE_USES_STD_NAMESPACE_FOR_STDC_LIB 1 # define ACE_WSTRING_HAS_USHORT_SUPPORT 1 -/* need to ensure these are included before */ -# include -# include - #endif /* defined(__BORLANDC__) */ #include "ace/post.h" diff --git a/ace/config-win32-common.h b/ace/config-win32-common.h index aa926c95d10..1ae6d04f108 100644 --- a/ace/config-win32-common.h +++ b/ace/config-win32-common.h @@ -148,6 +148,11 @@ #define ACE_HAS_GPERF +// By default, don't include RCS Id strings in object code. +#if !defined (ACE_USE_RCSID) +# define ACE_USE_RCSID 0 +#endif /* ! ACE_USE_RCSID */ + // ---------------- platform features or lack of them ------------- // Windows doesn't like 65536 ;-) If 65536 is specified, it is diff --git a/include/makeinclude/build_core_exe.bor b/include/makeinclude/build_core_exe.bor index 2fa7fdbac92..a39571e42ac 100644 --- a/include/makeinclude/build_core_exe.bor +++ b/include/makeinclude/build_core_exe.bor @@ -6,4 +6,6 @@ BINDIR = $(CORE_BINDIR) +INSTALL_THIS_TARGET = 1 + !include <$(ACE_ROOT)\include\makeinclude\build_exe.bor> diff --git a/include/makeinclude/build_core_library.bor b/include/makeinclude/build_core_library.bor index c1513abb0c3..8196c247def 100644 --- a/include/makeinclude/build_core_library.bor +++ b/include/makeinclude/build_core_library.bor @@ -6,4 +6,6 @@ BINDIR = $(CORE_BINDIR) +INSTALL_THIS_TARGET = 1 + !include <$(ACE_ROOT)\include\makeinclude\build_library.bor> diff --git a/include/makeinclude/build_dll.bor b/include/makeinclude/build_dll.bor index 1429ca8c2b1..dbdaaa474e0 100644 --- a/include/makeinclude/build_dll.bor +++ b/include/makeinclude/build_dll.bor @@ -1,6 +1,6 @@ # # Rules for linking a dll -# +# # Inputs: # ~~~~~~~ # NAME - undecorated name of target @@ -31,13 +31,11 @@ $(TARGET): $(OBJFILES) $(RESOURCE) @del $(TARGET:.dll=.tds) !endif -clean: - @copy &&! -@del $(OBJFILES:.obj=.obj ^ -@del ) $(RESOURCE) -! clean_$(NAME)~.bat 1> NUL - -@clean_$(NAME)~.bat 2> NUL - @del clean_$(NAME)~.bat +!include <$(ACE_ROOT)\include\makeinclude\clean.bor> + +INSTALL_TYPES = dll lib includes + +!include <$(ACE_ROOT)\include\makeinclude\install.bor> !ifdef CPPDIR .path.cpp = $(CPPDIR) @@ -60,4 +58,3 @@ clean: $(RC) -fo$@ $< .autodepend - diff --git a/include/makeinclude/build_exe.bor b/include/makeinclude/build_exe.bor index f02093ce692..8633efc9b98 100644 --- a/include/makeinclude/build_exe.bor +++ b/include/makeinclude/build_exe.bor @@ -1,8 +1,8 @@ -# +# # Rules for building an executable # # Inputs: -# ~~~~~~~ +# ~~~~~~~ # NAME - undecorated name of target # CFLAGS - extra compiler flags for building target # CPPDIR - list of directories containing source files @@ -32,13 +32,11 @@ $(TARGET): $(OBJFILES) $(RESOURCE) @del $(TARGET:.exe=.tds) !endif -clean: - @copy &&! -@del $(OBJFILES:.obj=.obj ^ -@del ) $(RESOURCE) -! clean_$(NAME)~.bat 1> NUL - -@clean_$(NAME)~.bat 2> NUL - @del clean_$(NAME)~.bat +!include <$(ACE_ROOT)\include\makeinclude\clean.bor> + +INSTALL_TYPES = exe + +!include <$(ACE_ROOT)\include\makeinclude\install.bor> !ifdef CPPDIR .path.cpp = $(CPPDIR) @@ -61,5 +59,3 @@ clean: $(RC) -fo$@ $< .autodepend - - diff --git a/include/makeinclude/build_lib.bor b/include/makeinclude/build_lib.bor index bc42dafdacd..abd969c7563 100644 --- a/include/makeinclude/build_lib.bor +++ b/include/makeinclude/build_lib.bor @@ -1,6 +1,6 @@ # # Rules for building a static library -# +# # Inputs: # ~~~~~~~ # NAME - undecorated name of target @@ -25,13 +25,11 @@ $(TARGET): $(OBJFILES) +-) ! -clean: - @copy &&! -@del $(OBJFILES:.obj=.obj ^ -@del ) -! clean_$(NAME)~.bat 1> NUL - -@clean_$(NAME)~.bat 2> NUL - @del clean_$(NAME)~.bat +!include <$(ACE_ROOT)\include\makeinclude\clean.bor> + +INSTALL_TYPES = lib includes + +!include <$(ACE_ROOT)\include\makeinclude\install.bor> !ifdef CPPDIR .path.cpp = $(CPPDIR) @@ -42,6 +40,5 @@ clean: .cpp.obj: @$(MAKE_OBJDIR) $(CC) $(COMMON_CFLAGS) $(LIB_CFLAGS) $(CFLAGS) -c -n$(@D) $< - -.autodepend +.autodepend diff --git a/include/makeinclude/clean.bor b/include/makeinclude/clean.bor new file mode 100644 index 00000000000..d267cf2b3c3 --- /dev/null +++ b/include/makeinclude/clean.bor @@ -0,0 +1,20 @@ +# +# Rules for cleaning up intermediate files +# + +clean: + @copy &&! +@del $(OBJFILES:.obj=.obj ^ +@del ) $(IDLFILES:.idl=C.cpp ^ +@del ) $(IDLFILES:.idl=C.h ^ +@del ) $(IDLFILES:.idl=C.i ^ +@del ) $(IDLFILES:.idl=S.cpp ^ +@del ) $(IDLFILES:.idl=S.h ^ +@del ) $(IDLFILES:.idl=S.i ^ +@del ) $(IDLFILES:.idl=S_T.cpp ^ +@del ) $(IDLFILES:.idl=S_T.h ^ +@del ) $(IDLFILES:.idl=S_T.i ^ +@del ) $(RESOURCE) +! clean_$(NAME)~.bat 1> NUL + -@clean_$(NAME)~.bat 2> NUL + @del clean_$(NAME)~.bat diff --git a/include/makeinclude/install.bor b/include/makeinclude/install.bor new file mode 100644 index 00000000000..54866eef6bd --- /dev/null +++ b/include/makeinclude/install.bor @@ -0,0 +1,37 @@ +# +# Rules for installing files +# + +# This ugliness is to remove extra spaces from between the items in the list. +INSTALL_TYPES_1 = $(INSTALL_TYPES) $(BLANK_SPACE) +INSTALL_TYPES_2 = $(INSTALL_TYPES_1: =%) +INSTALL_TYPES_3 = $(INSTALL_TYPES_2:%%=%) +INSTALL_TYPES_4 = $(INSTALL_TYPES_3:%%=%) +INSTALL_TYPES_5 = $(INSTALL_TYPES_4:%=_install ) + +!ifdef INSTALL_THIS_TARGET +install: $(INSTALL_TYPES_5) +!else +install: +!endif + @echo Do Nothing 1> NUL + +exe_install: $(TARGET) + @$(MAKE_INSTALL_EXEDIR) + -© "$**" $(INSTALL_EXEDIR) 1> NUL + +!ifdef DEBUG +dll_install: $(TARGET) $(TARGET:.dll=.tds) +!else +dll_install: $(TARGET) +!endif + @$(MAKE_INSTALL_DLLDIR) + -© "$**" $(INSTALL_DLLDIR) 1> NUL + +lib_install: $(TARGET:.dll=.lib) + @$(MAKE_INSTALL_LIBDIR) + -© "$**" $(INSTALL_LIBDIR) 1> NUL + +includes_install: $(INCLUDES) + @$(MAKE_INSTALL_INCDIR) + -© "$**" $(INSTALL_INCDIR) 1> NUL diff --git a/include/makeinclude/make_flags.bor b/include/makeinclude/make_flags.bor index 75827afb063..55b19d3ecd3 100644 --- a/include/makeinclude/make_flags.bor +++ b/include/makeinclude/make_flags.bor @@ -18,4 +18,9 @@ PASCAL_FLAG = -DPASCAL CODEGUARD_FLAG = -DCODEGUARD !endif -MAKE_FLAGS = $(DEBUG_FLAG) $(STATIC_FLAG) $(PASCAL_FLAG) $(CODEGUARD_FLAG) +!ifdef INSTALL_DIR +INSTALL_DIR_FLAG = -DINSTALL_DIR=$(INSTALL_DIR) +!endif + +MAKE_FLAGS = $(DEBUG_FLAG) $(STATIC_FLAG) $(PASCAL_FLAG) \ + $(CODEGUARD_FLAG) $(INSTALL_DIR_FLAG) diff --git a/include/makeinclude/outputdir.bor b/include/makeinclude/outputdir.bor index 5bf73ab3ebf..c258ce23dec 100644 --- a/include/makeinclude/outputdir.bor +++ b/include/makeinclude/outputdir.bor @@ -68,3 +68,55 @@ MAKE_OBJDIR=$(MKDIR) "$(OBJDIR)" # Use default mkdir provided by command shell. May not work on Win9x. MAKE_OBJDIR=if not exist "$(OBJDIR)" mkdir "$(OBJDIR)" !endif + +!ifndef INSTALL_EXEDIR +!ifndef STATIC +!ifndef DEBUG +INSTALL_EXEDIR=$(INSTALL_DIR)\bin +!else +INSTALL_EXEDIR=$(INSTALL_DIR)\bin\$(STATIC_DIR)\$(DEBUG_DIR) +!endif +!else +INSTALL_EXEDIR=$(INSTALL_DIR)\bin\$(STATIC_DIR)\$(DEBUG_DIR) +!endif +!endif + +!ifdef MKDIR +MAKE_INSTALL_EXEDIR=$(MKDIR) "$(INSTALL_EXEDIR)" +!else +# Use default mkdir provided by command shell. May not work on Win9x. +MAKE_INSTALL_EXEDIR=if not exist "$(INSTALL_EXEDIR)" mkdir "$(INSTALL_EXEDIR)" +!endif + +!ifndef INSTALL_DLLDIR +INSTALL_DLLDIR=$(INSTALL_DIR)\bin +!endif + +!ifdef MKDIR +MAKE_INSTALL_DLLDIR=$(MKDIR) "$(INSTALL_DLLDIR)" +!else +# Use default mkdir provided by command shell. May not work on Win9x. +MAKE_INSTALL_DLLDIR=if not exist "$(INSTALL_DLLDIR)" mkdir "$(INSTALL_DLLDIR)" +!endif + +!ifndef INSTALL_LIBDIR +INSTALL_LIBDIR=$(INSTALL_DIR)\lib +!endif + +!ifdef MKDIR +MAKE_INSTALL_LIBDIR=$(MKDIR) "$(INSTALL_LIBDIR)" +!else +# Use default mkdir provided by command shell. May not work on Win9x. +MAKE_INSTALL_LIBDIR=if not exist "$(INSTALL_LIBDIR)" mkdir "$(INSTALL_LIBDIR)" +!endif + +!ifndef INSTALL_INCDIR +INSTALL_INCDIR=$(INSTALL_DIR)\include\$(INCDIR_NAME) +!endif + +!ifdef MKDIR +MAKE_INSTALL_INCDIR=$(MKDIR) "$(INSTALL_INCDIR)" +!else +# Use default mkdir provided by command shell. May not work on Win9x. +MAKE_INSTALL_INCDIR=if not exist "$(INSTALL_INCDIR)" mkdir "$(INSTALL_INCDIR)" +!endif diff --git a/include/makeinclude/recurse.bor b/include/makeinclude/recurse.bor index 0ba6f4443cc..969403d7dd4 100644 --- a/include/makeinclude/recurse.bor +++ b/include/makeinclude/recurse.bor @@ -42,6 +42,25 @@ all: $(MAKE) -$(MAKEFLAGS) $(MAKE_FLAGS) -fMakefile.bor clean ! +# This ugliness is to remove extra spaces from between the items in the list. +DIRS_INSTALL_1 = $(DIRS) $(BLANK_SPACE) +DIRS_INSTALL_2 = $(DIRS_INSTALL_1: =%) +DIRS_INSTALL_3 = $(DIRS_INSTALL_2:%%=%) +DIRS_INSTALL_4 = $(DIRS_INSTALL_3:%%=%) +DIRS_INSTALL = $(DIRS_INSTALL_4:%=.Install ) + +install: $(DIRS_INSTALL) + +# We use an extra level of make recursion to ensure the current directory is +# automatically restored when the sub-directory is finished. +$(DIRS_INSTALL): + @echo Installing directory $(<:.Install=) + @$(MAKE) -$(MAKEFLAGS) $(MAKE_FLAGS) -f&&! +all: + @cd $(<:.Install=) + $(MAKE) -$(MAKEFLAGS) $(MAKE_FLAGS) -fMakefile.bor install +! + !endif !ifdef MAKEFILES @@ -70,4 +89,16 @@ clean: $(MAKEFILES_CLEAN) $(MAKEFILES_CLEAN): $(MAKE) -$(MAKEFLAGS) $(MAKE_FLAGS) -f$(<:.Clean=) clean +# This ugliness is to remove extra spaces from between the items in the list. +MAKEFILES_INSTALL_1 = $(MAKEFILES) $(BLANK_SPACE) +MAKEFILES_INSTALL_2 = $(MAKEFILES_INSTALL_1: =%) +MAKEFILES_INSTALL_3 = $(MAKEFILES_INSTALL_2:%%=%) +MAKEFILES_INSTALL_4 = $(MAKEFILES_INSTALL_3:%%=%) +MAKEFILES_INSTALL = $(MAKEFILES_INSTALL_4:%=.Install ) + +install: $(MAKEFILES_INSTALL) + +$(MAKEFILES_INSTALL): + $(MAKE) -$(MAKEFLAGS) $(MAKE_FLAGS) -f$(<:.Install=) install + !endif -- cgit v1.2.1