diff options
| author | David Caldwell | 2014-09-21 22:35:22 +0200 |
|---|---|---|
| committer | Jan Djärv | 2014-09-21 22:35:22 +0200 |
| commit | 63126683dbcf3ac507c3afd20ecbce88fb6e0fa4 (patch) | |
| tree | 1d4ccd5041ed18eaaab057153371a273526cda53 | |
| parent | b761843bb07f1b50ed0468a25bfb9b073cdbb2ee (diff) | |
| download | emacs-63126683dbcf3ac507c3afd20ecbce88fb6e0fa4.tar.gz emacs-63126683dbcf3ac507c3afd20ecbce88fb6e0fa4.zip | |
* configure.ac: Increase headerpad_extra to 1000, update the comment
about load commands.
* src/unexmacosx.c (dump_it): Improve error message.
Fixes: debbugs:18505
| -rw-r--r-- | ChangeLog | 5 | ||||
| -rw-r--r-- | configure.ac | 10 | ||||
| -rw-r--r-- | src/ChangeLog | 4 | ||||
| -rw-r--r-- | src/unexmacosx.c | 4 |
4 files changed, 18 insertions, 5 deletions
| @@ -1,3 +1,8 @@ | |||
| 1 | 2014-09-21 Jan Djärv <jan.h.d@swipnet.se> | ||
| 2 | |||
| 3 | * configure.ac: Increase headerpad_extra to 1000, update the comment | ||
| 4 | about load commands (Bug#18505). | ||
| 5 | |||
| 1 | 2014-09-13 Eli Zaretskii <eliz@gnu.org> | 6 | 2014-09-13 Eli Zaretskii <eliz@gnu.org> |
| 2 | 7 | ||
| 3 | * configure.ac (HAVE_SOUND): Check for mmsystem.h header that | 8 | * configure.ac (HAVE_SOUND): Check for mmsystem.h header that |
diff --git a/configure.ac b/configure.ac index f05c14a319c..0102551ece5 100644 --- a/configure.ac +++ b/configure.ac | |||
| @@ -4859,17 +4859,19 @@ case "$opsys" in | |||
| 4859 | darwin) | 4859 | darwin) |
| 4860 | ## The -headerpad option tells ld (see man page) to leave room at the | 4860 | ## The -headerpad option tells ld (see man page) to leave room at the |
| 4861 | ## end of the header for adding load commands. Needed for dumping. | 4861 | ## end of the header for adding load commands. Needed for dumping. |
| 4862 | ## 0x690 is the total size of 30 segment load commands (at 56 | 4862 | ## 0x1000 is enough for roughly 52 load commands on the x86_64 |
| 4863 | ## each); under Cocoa 31 commands are required. | 4863 | ## architecture (where they are 78 bytes each). The actual number of |
| 4864 | ## load commands added is not consistent but normally ranges from | ||
| 4865 | ## about 14 to about 34. Setting it high gets us plenty of slop and | ||
| 4866 | ## only costs about 1.5K of wasted binary space. | ||
| 4867 | headerpad_extra=1000 | ||
| 4864 | if test "$HAVE_NS" = "yes"; then | 4868 | if test "$HAVE_NS" = "yes"; then |
| 4865 | libs_nsgui="-framework AppKit" | 4869 | libs_nsgui="-framework AppKit" |
| 4866 | if test "$NS_IMPL_COCOA" = "yes"; then | 4870 | if test "$NS_IMPL_COCOA" = "yes"; then |
| 4867 | libs_nsgui="$libs_nsgui -framework IOKit" | 4871 | libs_nsgui="$libs_nsgui -framework IOKit" |
| 4868 | fi | 4872 | fi |
| 4869 | headerpad_extra=6C8 | ||
| 4870 | else | 4873 | else |
| 4871 | libs_nsgui= | 4874 | libs_nsgui= |
| 4872 | headerpad_extra=690 | ||
| 4873 | fi | 4875 | fi |
| 4874 | LD_SWITCH_SYSTEM_TEMACS="-fno-pie -prebind $libs_nsgui -Xlinker -headerpad -Xlinker $headerpad_extra" | 4876 | LD_SWITCH_SYSTEM_TEMACS="-fno-pie -prebind $libs_nsgui -Xlinker -headerpad -Xlinker $headerpad_extra" |
| 4875 | 4877 | ||
diff --git a/src/ChangeLog b/src/ChangeLog index ea4dde398a7..684de498522 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,7 @@ | |||
| 1 | 2014-09-21 David Caldwell <david@porkrind.org> (tiny change) | ||
| 2 | |||
| 3 | * unexmacosx.c (dump_it): Improve error message. | ||
| 4 | |||
| 1 | 2014-09-18 Juri Linkov <juri@jurta.org> | 5 | 2014-09-18 Juri Linkov <juri@jurta.org> |
| 2 | 6 | ||
| 3 | * image.c (imagemagick_load_image): Add delay to imagemagick metadata. | 7 | * image.c (imagemagick_load_image): Add delay to imagemagick metadata. |
diff --git a/src/unexmacosx.c b/src/unexmacosx.c index 8cd80a7a544..7d4762fdab2 100644 --- a/src/unexmacosx.c +++ b/src/unexmacosx.c | |||
| @@ -1302,7 +1302,9 @@ dump_it (void) | |||
| 1302 | } | 1302 | } |
| 1303 | 1303 | ||
| 1304 | if (curr_header_offset > text_seg_lowest_offset) | 1304 | if (curr_header_offset > text_seg_lowest_offset) |
| 1305 | unexec_error ("not enough room for load commands for new __DATA segments"); | 1305 | unexec_error ("not enough room for load commands for new __DATA segments" |
| 1306 | " (increase headerpad_extra in configure.in to at least %lX)", | ||
| 1307 | num_unexec_regions * sizeof (struct segment_command)); | ||
| 1306 | 1308 | ||
| 1307 | printf ("%ld unused bytes follow Mach-O header\n", | 1309 | printf ("%ld unused bytes follow Mach-O header\n", |
| 1308 | text_seg_lowest_offset - curr_header_offset); | 1310 | text_seg_lowest_offset - curr_header_offset); |