Misha Brukman | b3a734a | 2004-10-13 01:07:55 +0000 | [diff] [blame] | 1 | Upgrading Libtool |
Reid Spencer | 8baa775 | 2004-11-29 12:28:47 +0000 | [diff] [blame] | 2 | =============================================================================== |
Misha Brukman | b3a734a | 2004-10-13 01:07:55 +0000 | [diff] [blame] | 3 | |
| 4 | If you are in the mood to upgrade libtool, you must do the following: |
| 5 | |
Reid Spencer | 8baa775 | 2004-11-29 12:28:47 +0000 | [diff] [blame] | 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 |
Reid Spencer | e32beb7 | 2004-12-24 00:15:20 +0000 | [diff] [blame] | 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 |
Reid Spencer | 8baa775 | 2004-11-29 12:28:47 +0000 | [diff] [blame] | 15 | default_ofile is set to "mklib" instead of "libtool" |
Reid Spencer | e32beb7 | 2004-12-24 00:15:20 +0000 | [diff] [blame] | 16 | 10. Run "autoupdate libtool.m4 ltdl.m4" in the llvm/autoconf/m4 directory. |
Reid Spencer | 8baa775 | 2004-11-29 12:28:47 +0000 | [diff] [blame] | 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. |
Reid Spencer | e32beb7 | 2004-12-24 00:15:20 +0000 | [diff] [blame] | 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. |
Reid Spencer | 8baa775 | 2004-11-29 12:28:47 +0000 | [diff] [blame] | 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. |