Kaydet (Commit) 13a3364b authored tarafından Michael Stahl's avatar Michael Stahl

gbuild: AutoInstall: fix the command line for Win32 make

Replace one ugly way with a different ugly way; it looks like the
make_define invocation did not actually work before.

Change-Id: Idd365f82a6fabab9444471ac88f91d81476bf124
üst 27c6cf1d
...@@ -16,6 +16,20 @@ echo " $(lastword $(1))" >> $@; ...@@ -16,6 +16,20 @@ echo " $(lastword $(1))" >> $@;
echo "" >> $@ echo "" >> $@
endef endef
define gb_AutoInstall__gen_define
$(file >>$@,#define auto_$*_ALL \)
$(foreach binary,$(filter-out $(lastword $(1)),$(1)),$(file >>$@,\
$(subst .,_,$(subst -,_,$(binary))), \))
$(file >>$@,\
$(lastword $(1)))
endef
define gb_AutoInstall__gen_lib
$(SCP2LIBTEMPLATE)(auto_$*_lib_$(1),$(call gb_Library_get_runtime_filename,$(1))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))
endef
$(dir $(call gb_AutoInstall_get_target,%)).dir : $(dir $(call gb_AutoInstall_get_target,%)).dir :
$(if $(wildcard $(dir $@)),,mkdir -p $(dir $@)) $(if $(wildcard $(dir $@)),,mkdir -p $(dir $@))
...@@ -23,6 +37,7 @@ $(call gb_AutoInstall_get_target,%) : $(GBUILDDIR)/AutoInstall.mk \ ...@@ -23,6 +37,7 @@ $(call gb_AutoInstall_get_target,%) : $(GBUILDDIR)/AutoInstall.mk \
$(SRCDIR)/Repository.mk $(SRCDIR)/RepositoryExternal.mk \ $(SRCDIR)/Repository.mk $(SRCDIR)/RepositoryExternal.mk \
$(BUILDDIR)/config_host.mk $(BUILDDIR)/config_host.mk
$(call gb_Output_announce,$*,$(true),AIN,3) $(call gb_Output_announce,$*,$(true),AIN,3)
ifeq ($(HAVE_GNUMAKE_FILE_FUNC),)
echo "/* autogenerated installs for group $* */" > $@ echo "/* autogenerated installs for group $* */" > $@
$(call gb_AutoInstall__make_define,\ $(call gb_AutoInstall__make_define,\
$(foreach lib,$(gb_Library_MODULE_$*),auto_$*_lib_$(lib)) \ $(foreach lib,$(gb_Library_MODULE_$*),auto_$*_lib_$(lib)) \
...@@ -30,13 +45,18 @@ $(call gb_AutoInstall_get_target,%) : $(GBUILDDIR)/AutoInstall.mk \ ...@@ -30,13 +45,18 @@ $(call gb_AutoInstall_get_target,%) : $(GBUILDDIR)/AutoInstall.mk \
$(foreach exe,$(gb_Executable_MODULE_$*),auto_$*_exe_$(exe)) \ $(foreach exe,$(gb_Executable_MODULE_$*),auto_$*_exe_$(exe)) \
$(foreach jar,$(gb_Jar_MODULE_$*),auto_$*_jar_$(jar)) \ $(foreach jar,$(gb_Jar_MODULE_$*),auto_$*_jar_$(jar)) \
$(foreach pkg,$(gb_Package_MODULE_$*),auto_$*_pkg_$(pkg))) $(foreach pkg,$(gb_Package_MODULE_$*),auto_$*_pkg_$(pkg)))
# ugly hack for Win32 8k command line length limit $(foreach lib,$(gb_Library_MODULE_$*),\
$(foreach lib,$(wordlist 1,70,$(gb_Library_MODULE_$*)),\ echo '$(SCP2LIBTEMPLATE)(auto_$*_lib_$(lib),$(call gb_Library_get_runtime_filename,$(lib))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))' >> $@;)
echo '$(SCP2LIBTEMPLATE)(auto_$*_lib_$(lib),$(call gb_Library_get_runtime_filename,$(lib))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))' >> $@ &&) true else
$(foreach lib,$(wordlist 71,140,$(gb_Library_MODULE_$*)),\ $(file >$@,/* autogenerated installs for group $* */)
echo '$(SCP2LIBTEMPLATE)(auto_$*_lib_$(lib),$(call gb_Library_get_runtime_filename,$(lib))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))' >> $@ &&) true $(call gb_AutoInstall__gen_define,\
$(foreach lib,$(wordlist 141,9999,$(gb_Library_MODULE_$*)),\ $(foreach lib,$(gb_Library_MODULE_$*),auto_$*_lib_$(lib)) \
echo '$(SCP2LIBTEMPLATE)(auto_$*_lib_$(lib),$(call gb_Library_get_runtime_filename,$(lib))$(if $(SCP2COMPONENTCONDITION),$(COMMA)$(SCP2COMPONENTCONDITION)))' >> $@ &&) true $(foreach lib,$(gb_SdkLinkLibrary_MODULE_$*),auto_$*_link_$(lib)) \
$(foreach exe,$(gb_Executable_MODULE_$*),auto_$*_exe_$(exe)) \
$(foreach jar,$(gb_Jar_MODULE_$*),auto_$*_jar_$(jar)) \
$(foreach pkg,$(gb_Package_MODULE_$*),auto_$*_pkg_$(pkg)))
$(file >>$@,$(foreach lib,$(gb_Library_MODULE_$*),$(call gb_AutoInstall__gen_lib,$(lib))))
endif
$(foreach lib,$(gb_SdkLinkLibrary_MODULE_$*),\ $(foreach lib,$(gb_SdkLinkLibrary_MODULE_$*),\
echo 'SDK_LIBRARY_LINK(auto_$*_link_$(lib),$(notdir $(call gb_Library_get_sdk_link_lib,$(lib))),../../ure-link/lib/$(call gb_Library_get_runtime_filename,$(lib)))' >> $@;) echo 'SDK_LIBRARY_LINK(auto_$*_link_$(lib),$(notdir $(call gb_Library_get_sdk_link_lib,$(lib))),../../ure-link/lib/$(call gb_Library_get_runtime_filename,$(lib)))' >> $@;)
$(foreach exe,$(gb_Executable_MODULE_$*),\ $(foreach exe,$(gb_Executable_MODULE_$*),\
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment