aboutsummaryrefslogtreecommitdiffstats
path: root/autoconf/README.TXT
diff options
context:
space:
mode:
authorShih-wei Liao <sliao@google.com>2010-02-10 11:10:31 -0800
committerShih-wei Liao <sliao@google.com>2010-02-10 11:10:31 -0800
commite264f62ca09a8f65c87a46d562a4d0f9ec5d457e (patch)
tree59e3d57ef656cef79afa708ae0a3daf25cd91fcf /autoconf/README.TXT
downloadexternal_llvm-e264f62ca09a8f65c87a46d562a4d0f9ec5d457e.zip
external_llvm-e264f62ca09a8f65c87a46d562a4d0f9ec5d457e.tar.gz
external_llvm-e264f62ca09a8f65c87a46d562a4d0f9ec5d457e.tar.bz2
Check in LLVM r95781.
Diffstat (limited to 'autoconf/README.TXT')
-rw-r--r--autoconf/README.TXT49
1 files changed, 49 insertions, 0 deletions
diff --git a/autoconf/README.TXT b/autoconf/README.TXT
new file mode 100644
index 0000000..3dabdf7
--- /dev/null
+++ b/autoconf/README.TXT
@@ -0,0 +1,49 @@
+Upgrading Libtool
+===============================================================================
+
+If you are in the mood to upgrade libtool, you must do the following:
+
+ 1. Get the new version of libtool and put it in <SRC>
+ 2. configure/build/install libtool with --prefix=<PFX>
+ 3. Copy <SRC>/ltdl.m4 to llvm/autoconf/m4
+ 4. Copy <PFX>/share/aclocal/libtool.m4 to llvm/autoconf/m4/libtool.m4
+ 5. Copy <PFX>/share/libtool/ltmain.sh to llvm/autoconf/ltmain.sh
+ 6. Copy <PFX>/share/libtool/libltdl/ltdl.c to llvm/lib/System
+ 7. Copy <PFX>/share/libtool/libltdl/ltdl.h to llvm/lib/System
+ 8. Edit the ltdl.h file to #include "llvm/Config/config.h" at the very top. You
+ might also need to resolve some compiler warnings (typically about
+ comparison of signed vs. unsigned values). But, you won't find out about
+ those until you build LLVM (step 13).
+ 9. Edit the llvm/autoconf/m4/libtool.m4 file so that:
+ a) in AC_PROB_LIBTOOL macro, the value of LIBTOOL is set to
+ $(top_builddir)/mklib, not $(top_builddir)/libtool
+ b) in AC_LIBTOOL_SETUP macro, the variable default_ofile is set to
+ "mklib" instead of "libtool"
+ c) s/AC_ENABLE_SHARED_DEFAULT/enable_shared_default/g
+ d) s/AC_ENABLE_STATIC_DEFAULT/enable_static_default/g
+ e) s/AC_ENABLE_FAST_INSTALL_DEFAULT/enable_fast_install_default/g
+10. Run "autoupdate libtool.m4 ltdl.m4" in the llvm/autoconf/m4 directory.
+ This should correctly update the macro definitions in the libtool m4
+ files to match the version of autoconf that LLVM uses. This converts
+ AC_HELP_STRING to AS_HELP_STRING and AC_TRY_LINK to AC_LINK_IFELSE, amongst
+ other things. You may need to manually adjust the files.
+11. Run AutoRegen.sh to get the new macros into configure script
+12. If there are any warnings from AutoRegen.sh, go to step 9.
+13. Rebuild LLVM, making sure it reconfigures
+14. Test the JIT which uses libltdl
+15. If it all works, only THEN commit the changes.
+
+Upgrading autoconf
+===============================================================================
+
+If you are in the mood to upgrade autoconf, you should:
+
+ 1. Consider not upgrading.
+ 2. No really, this is a hassle, you don't want to do it.
+ 3. Get the new version of autoconf and put it in <SRC>
+ 4. configure/build/install autoconf with --prefix=<PFX>
+ 5. Run autoupdate on all the m4 macros in llvm/autoconf/m4
+ 6. Run autoupdate on llvm/autoconf/configure.ac
+ 7. Regenerate configure script with AutoRegen.sh
+ 8. If there are any warnings from AutoRegen.sh, fix them and go to step 7.
+ 9. Test, test, test.