--- tools/build/parrot_config_c.pl 2009-07-09 14:57:58.000000000 +0200 +++ tools/build/parrot_config_c.pl.new 2009-07-10 10:17:25.000000000 +0200 @@ -92,6 +92,7 @@ print << "EOF"; }; /* parrot_config */ +PARROT_EXPORT void Parrot_set_config_hash(void) { --- tools/dev/pbc_to_exe.pir 2009-07-11 11:18:53.000000000 +0200 +++ tools/dev/pbc_to_exe.pir.new 2009-07-11 13:00:54.000000000 +0200 @@ -567,7 +567,7 @@ $P0 = '_config'() .local string cc, link, link_dynamic, linkflags, ld_out, libparrot, libs, o - .local string rpath, osname, build_dir, slash, icushared + .local string rpath, osname, build_dir, slash, icushared, installed cc = $P0['cc'] link = $P0['link'] link_dynamic = $P0['link_dynamic'] @@ -581,6 +581,7 @@ build_dir = $P0['build_dir'] slash = $P0['slash'] icushared = $P0['icu_shared'] + installed = $P0['installed'] .local string config, pathquote, exeprefix exeprefix = substr exefile, 0, 12 @@ -613,8 +614,10 @@ link .= extra_obj link .= pathquote skip_extra_obj: + if installed == '1' goto config_object_is_in_library link .= ' ' link .= config + config_object_is_in_library: link .= ' ' link .= rpath link .= ' ' --- config/gen/makefiles/root.in 2009-07-11 11:19:05.000000000 +0200 +++ config/gen/makefiles/root.in.new 2009-07-11 14:04:49.000000000 +0200 @@ -896,12 +896,22 @@ #IF(win32): if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2 #IF(libparrot_shared_alias): ( cd @blib_dir@ ; ln -sf @libparrot_shared@ @libparrot_shared_alias@ ) +rebuild : $(O_FILES) $(SRC_DIR)/install_config$(O) + @echo Rebuild the Parrot library with including $(SRC_DIR)/install_config$(O) + $(MKPATH) @blib_dir@ + $(LD) $(LD_SHARE_FLAGS) $(LDFLAGS) @ld_out@$(LIBPARROT_SHARED) @libparrot_soname@ \ +#IF(cygwin): -Wl,--out-implib=libparrot.dll.a \ +#IF(win32 and cc==gcc): -Wl,--out-implib=libparrot.lib \ + $(O_FILES) $(SRC_DIR)/install_config$(O) $(C_LIBS) $(ICU_SHARED) +#IF(win32): if exist $@.manifest mt.exe -nologo -manifest $@.manifest -outputresource:$@;2 +#IF(libparrot_shared_alias): ( cd @blib_dir@ ; ln -sf @libparrot_shared@ @libparrot_shared_alias@ ) + $(INSTALLABLECONFIG) : $(SRC_DIR)/install_config$(O) $(PARROT_CONFIG) $(PBC_TO_EXE) $(PARROT) -o parrot_config.pbc tools/util/parrot-config.pir $(PBC_TO_EXE) parrot_config.pbc --install -$(INSTALLABLEPBCTOEXE) : $(PBC_TO_EXE) +$(INSTALLABLEPBCTOEXE) : $(PBC_TO_EXE) rebuild $(PBC_TO_EXE) pbc_to_exe.pbc --install #