Fix a bug in libtool's ltmain.sh. On Cygwin the "$output.exp" expression
[oota-llvm.git] / autoconf / README.TXT
1 Upgrading Libtool
2 ===============================================================================
3
4 If you are in the mood to upgrade libtool, you must do the following:
5
6  1. Get the new version of libtool and put it in <SRC>
7  2. configure/build/install libtool with --prefix=<PFX>
8  3. Copy <SRC>/ltdl.m4 to llvm/autoconf/m4
9  4. Copy <PFX>/share/aclocal/libtool.m4 to llvm/autoconf/m4/libtool.m4
10  5. Copy <PFX>/share/libtool/ltmain.sh to llvm/autoconf/ltmain.sh
11  6. Run sed -e 's/output.exp/outputname.exp/g' on ltmain.sh
12  7. Copy <PFX>/share/libtool/libltdl/ltdl.c to llvm/lib/System
13  8. Copy <PFX>/share/libtool/libltdl/ltdl.h to llvm/lib/System
14  9. Adjust the llvm/autoconf/m4/libtool.m4 file to ensure that the variable
15     default_ofile is set to "mklib" instead of "libtool"
16 10. Run "autoupdate libtool.m4 ltdl.m4" in the llvm/autoconf/m4 directory.
17     This should correctly update the macro definitions in the libtool m4 
18     files to match the version of autoconf that LLVM uses. This converts
19     AC_HELP_STRING to AS_HELP_STRING and AC_TRY_LINK to AC_LINK_IFELSE, amongst
20     other things. You may need to manually adjust the files.
21 11. Run AutoRegen.sh to get the new macros into configure script
22 12. If there are any warnings from configure, go to step 9.
23 13. Rebuild LLVM, making sure it reconfigured
24 14. Test the JIT which uses libltdl
25 15. If it all works, only THEN commit the changes.
26
27 Upgrading autoconf
28 ===============================================================================
29
30 If you are in the mood to upgrade autoconf, you should:
31
32  1. Consider not upgrading.
33  2. No really, this is a hassle, you don't want to do it.
34  3. Get the new version of autoconf and put it in <SRC>
35  4. configure/build/install autoconf with --prefix=<PFX>
36  5. Run autoupdate on all the m4 macros in llvm/autoconf/m4
37  6. Run autoupdate on llvm/autoconf/configure.ac
38  7. Regenerate configure script with AutoRegen.sh
39  8. If there are any warnings from autoconf, fix them and go to step 7.
40  9. Test, test, test.