64 PKG_MACROS += EMACS_ULEVDIR=$(EMACS_ULEVDIR) |
64 PKG_MACROS += EMACS_ULEVDIR=$(EMACS_ULEVDIR) |
65 |
65 |
66 # LD_OPTIONS is defined to apply desirable link-editor options to Userland |
66 # LD_OPTIONS is defined to apply desirable link-editor options to Userland |
67 # components. Non-executable stack and data break sparc emacs. |
67 # components. Non-executable stack and data break sparc emacs. |
68 # |
68 # |
69 LD_MAP_NOEXSTK.sparc= |
|
70 LD_MAP_NOEXDATA.sparc= |
69 LD_MAP_NOEXDATA.sparc= |
71 |
70 |
72 # Uncomment this for debugging only. It configures emacs to run from the |
71 # Uncomment this for debugging only. It configures emacs to run from the |
73 # local proto instead of from its final installed location. This is useful |
72 # local proto instead of from its final installed location. This is useful |
74 # for initial bringup of new emacs versions, but can only be used up through |
73 # for initial bringup of new emacs versions, but can only be used up through |
110 # ASLR should remain disabled for emacs. ASLR undermines emacs's dumping |
109 # ASLR should remain disabled for emacs. ASLR undermines emacs's dumping |
111 # code, which requires every execution to have the same mappings. Since |
110 # code, which requires every execution to have the same mappings. Since |
112 # emacs is not network facing, or run with elevated privileges, this is |
111 # emacs is not network facing, or run with elevated privileges, this is |
113 # not a security concern. |
112 # not a security concern. |
114 # |
113 # |
115 # As with ASLR, ADIHEAP should be explicitly disabled for emacs, as the |
114 # Similarly, emacs cannot cope with a non-executable stack and with a protected |
116 # dumped emacs cannot work with ADI. Recognizing that ASLR_MODE could really |
115 # and non-executable heap. |
117 # be SX_MODE, and generalized to handle all the sxadm extensions, redefine |
|
118 # it here to handle both cases. It is expected that in due course, the |
|
119 # Userland framework will evolve in this direction. |
|
120 # |
|
121 ifeq ($(OS_VERSION), 5.11) |
|
122 ASLR_MODE = $(ASLR_DISABLE) |
116 ASLR_MODE = $(ASLR_DISABLE) |
123 else |
117 NXHEAP_MODE = $(NXHEAP_DISABLE) |
124 ASLR_MODE = -z sx=aslr=disable,adiheap=disable |
118 NXSTACK_MODE = $(NXSTACK_DISABLE) |
125 endif |
119 ADIHEAP_MODE = $(ADIHEAP_DISABLE) |
126 |
120 |
127 # variant specific configure options |
121 # variant specific configure options |
128 $(BUILD_DIR)/%-nox/.configured: CONFIGURE_OPTIONS += --without-all --without-x |
122 $(BUILD_DIR)/%-nox/.configured: CONFIGURE_OPTIONS += --without-all --without-x |
129 $(BUILD_DIR)/%-x/.configured: CONFIGURE_OPTIONS += --with-x-toolkit=lucid |
123 $(BUILD_DIR)/%-x/.configured: CONFIGURE_OPTIONS += --with-x-toolkit=lucid |
130 $(BUILD_DIR)/%-gtk/.configured: CONFIGURE_OPTIONS += --with-x-toolkit=gtk |
124 $(BUILD_DIR)/%-gtk/.configured: CONFIGURE_OPTIONS += --with-x-toolkit=gtk |