Compare commits
3 Commits
rawhide
...
private-em
Author | SHA1 | Date | |
---|---|---|---|
|
3cfc97a204 | ||
|
9bc2e60814 | ||
|
50da12b211 |
4
.cvsignore
Normal file
4
.cvsignore
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
emacs-21.3.50*
|
||||||
|
emacs-22.0.50*
|
||||||
|
php-mode-1.1.0.tgz
|
||||||
|
emacs-22.0.50-20050406.tar.gz
|
33
.gitignore
vendored
33
.gitignore
vendored
@ -1,33 +0,0 @@
|
|||||||
/emacs-23.3a.tar.bz2
|
|
||||||
/php-mode.el
|
|
||||||
/emacs-24.0.92.tar.gz
|
|
||||||
/emacs-24.0.93.tar.gz
|
|
||||||
/emacs-24.0.94.tar.gz
|
|
||||||
/emacs-24.0.95.tar.gz
|
|
||||||
/emacs-24.0.97.tar.gz
|
|
||||||
/emacs-24.1-rc.tar.gz
|
|
||||||
/emacs-24.1.tar.bz2
|
|
||||||
/emacs-24.2.tar.xz
|
|
||||||
/emacs-24.3.tar.xz
|
|
||||||
/emacs-24.4.tar.xz
|
|
||||||
/emacs-24.5.tar.xz
|
|
||||||
/emacs-25.0.92.tar.xz
|
|
||||||
/emacs-25.0.93.tar.xz
|
|
||||||
/emacs-25.0.94.tar.xz
|
|
||||||
/emacs-25.0.95.tar.xz
|
|
||||||
/emacs-25.1-rc1.tar.xz
|
|
||||||
/emacs-25.1-rc2.tar.xz
|
|
||||||
/emacs-25.1.tar.xz
|
|
||||||
/emacs-25.2-rc2.tar.xz
|
|
||||||
/emacs-25.2.tar.xz
|
|
||||||
/emacs-25.3.tar.xz
|
|
||||||
/emacs-26.1.tar.xz
|
|
||||||
/emacs-26.2.tar.xz
|
|
||||||
/emacs-26.3.tar.xz
|
|
||||||
/emacs-26.3.tar.xz.sig
|
|
||||||
/emacs-27.1.tar.xz
|
|
||||||
/emacs-27.1.tar.xz.sig
|
|
||||||
/emacs-27.2.tar.xz
|
|
||||||
/emacs-27.2.tar.xz.sig
|
|
||||||
/emacs-28.1.tar.xz
|
|
||||||
/emacs-28.1.tar.xz.sig
|
|
6
Makefile
Normal file
6
Makefile
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
# Makefile for source rpm: emacs
|
||||||
|
# $Id: Makefile,v 1.1 2004/09/09 04:30:11 cvsdist Exp $
|
||||||
|
NAME := emacs
|
||||||
|
SPECFILE = $(firstword $(wildcard *.spec))
|
||||||
|
|
||||||
|
include ../common/Makefile.common
|
707
cdefs.h
707
cdefs.h
@ -1,707 +0,0 @@
|
|||||||
/* Copyright (C) 1992-2022 Free Software Foundation, Inc.
|
|
||||||
Copyright The GNU Toolchain Authors.
|
|
||||||
This file is part of the GNU C Library.
|
|
||||||
|
|
||||||
The GNU C Library is free software; you can redistribute it and/or
|
|
||||||
modify it under the terms of the GNU Lesser General Public
|
|
||||||
License as published by the Free Software Foundation; either
|
|
||||||
version 2.1 of the License, or (at your option) any later version.
|
|
||||||
|
|
||||||
The GNU C Library is distributed in the hope that it will be useful,
|
|
||||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
||||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
||||||
Lesser General Public License for more details.
|
|
||||||
|
|
||||||
You should have received a copy of the GNU Lesser General Public
|
|
||||||
License along with the GNU C Library; if not, see
|
|
||||||
<https://www.gnu.org/licenses/>. */
|
|
||||||
|
|
||||||
#ifndef _SYS_CDEFS_H
|
|
||||||
#define _SYS_CDEFS_H 1
|
|
||||||
|
|
||||||
/* We are almost always included from features.h. */
|
|
||||||
#ifndef _FEATURES_H
|
|
||||||
# include <features.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* The GNU libc does not support any K&R compilers or the traditional mode
|
|
||||||
of ISO C compilers anymore. Check for some of the combinations not
|
|
||||||
supported anymore. */
|
|
||||||
#if defined __GNUC__ && !defined __STDC__
|
|
||||||
# error "You need a ISO C conforming compiler to use the glibc headers"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Some user header file might have defined this before. */
|
|
||||||
#undef __P
|
|
||||||
#undef __PMT
|
|
||||||
|
|
||||||
/* Compilers that lack __has_attribute may object to
|
|
||||||
#if defined __has_attribute && __has_attribute (...)
|
|
||||||
even though they do not need to evaluate the right-hand side of the &&.
|
|
||||||
Similarly for __has_builtin, etc. */
|
|
||||||
#if (defined __has_attribute \
|
|
||||||
&& (!defined __clang_minor__ \
|
|
||||||
|| (defined __apple_build_version__ \
|
|
||||||
? 6000000 <= __apple_build_version__ \
|
|
||||||
: 3 < __clang_major__ + (5 <= __clang_minor__))))
|
|
||||||
# define __glibc_has_attribute(attr) __has_attribute (attr)
|
|
||||||
#else
|
|
||||||
# define __glibc_has_attribute(attr) 0
|
|
||||||
#endif
|
|
||||||
#ifdef __has_builtin
|
|
||||||
# define __glibc_has_builtin(name) __has_builtin (name)
|
|
||||||
#else
|
|
||||||
# define __glibc_has_builtin(name) 0
|
|
||||||
#endif
|
|
||||||
#ifdef __has_extension
|
|
||||||
# define __glibc_has_extension(ext) __has_extension (ext)
|
|
||||||
#else
|
|
||||||
# define __glibc_has_extension(ext) 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined __GNUC__ || defined __clang__
|
|
||||||
|
|
||||||
/* All functions, except those with callbacks or those that
|
|
||||||
synchronize memory, are leaf functions. */
|
|
||||||
# if __GNUC_PREREQ (4, 6) && !defined _LIBC
|
|
||||||
# define __LEAF , __leaf__
|
|
||||||
# define __LEAF_ATTR __attribute__ ((__leaf__))
|
|
||||||
# else
|
|
||||||
# define __LEAF
|
|
||||||
# define __LEAF_ATTR
|
|
||||||
# endif
|
|
||||||
|
|
||||||
/* GCC can always grok prototypes. For C++ programs we add throw()
|
|
||||||
to help it optimize the function calls. But this only works with
|
|
||||||
gcc 2.8.x and egcs. For gcc 3.4 and up we even mark C functions
|
|
||||||
as non-throwing using a function attribute since programs can use
|
|
||||||
the -fexceptions options for C code as well. */
|
|
||||||
# if !defined __cplusplus \
|
|
||||||
&& (__GNUC_PREREQ (3, 4) || __glibc_has_attribute (__nothrow__))
|
|
||||||
# define __THROW __attribute__ ((__nothrow__ __LEAF))
|
|
||||||
# define __THROWNL __attribute__ ((__nothrow__))
|
|
||||||
# define __NTH(fct) __attribute__ ((__nothrow__ __LEAF)) fct
|
|
||||||
# define __NTHNL(fct) __attribute__ ((__nothrow__)) fct
|
|
||||||
# else
|
|
||||||
# if defined __cplusplus && (__GNUC_PREREQ (2,8) || __clang_major >= 4)
|
|
||||||
# if __cplusplus >= 201103L
|
|
||||||
# define __THROW noexcept (true)
|
|
||||||
# else
|
|
||||||
# define __THROW throw ()
|
|
||||||
# endif
|
|
||||||
# define __THROWNL __THROW
|
|
||||||
# define __NTH(fct) __LEAF_ATTR fct __THROW
|
|
||||||
# define __NTHNL(fct) fct __THROW
|
|
||||||
# else
|
|
||||||
# define __THROW
|
|
||||||
# define __THROWNL
|
|
||||||
# define __NTH(fct) fct
|
|
||||||
# define __NTHNL(fct) fct
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
|
|
||||||
#else /* Not GCC or clang. */
|
|
||||||
|
|
||||||
# if (defined __cplusplus \
|
|
||||||
|| (defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L))
|
|
||||||
# define __inline inline
|
|
||||||
# else
|
|
||||||
# define __inline /* No inline functions. */
|
|
||||||
# endif
|
|
||||||
|
|
||||||
# define __THROW
|
|
||||||
# define __THROWNL
|
|
||||||
# define __NTH(fct) fct
|
|
||||||
|
|
||||||
#endif /* GCC || clang. */
|
|
||||||
|
|
||||||
/* These two macros are not used in glibc anymore. They are kept here
|
|
||||||
only because some other projects expect the macros to be defined. */
|
|
||||||
#define __P(args) args
|
|
||||||
#define __PMT(args) args
|
|
||||||
|
|
||||||
/* For these things, GCC behaves the ANSI way normally,
|
|
||||||
and the non-ANSI way under -traditional. */
|
|
||||||
|
|
||||||
#define __CONCAT(x,y) x ## y
|
|
||||||
#define __STRING(x) #x
|
|
||||||
|
|
||||||
/* This is not a typedef so `const __ptr_t' does the right thing. */
|
|
||||||
#define __ptr_t void *
|
|
||||||
|
|
||||||
|
|
||||||
/* C++ needs to know that types and declarations are C, not C++. */
|
|
||||||
#ifdef __cplusplus
|
|
||||||
# define __BEGIN_DECLS extern "C" {
|
|
||||||
# define __END_DECLS }
|
|
||||||
#else
|
|
||||||
# define __BEGIN_DECLS
|
|
||||||
# define __END_DECLS
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/* Fortify support. */
|
|
||||||
#define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1)
|
|
||||||
#define __bos0(ptr) __builtin_object_size (ptr, 0)
|
|
||||||
|
|
||||||
/* Use __builtin_dynamic_object_size at _FORTIFY_SOURCE=3 when available. */
|
|
||||||
#if __USE_FORTIFY_LEVEL == 3 && (__glibc_clang_prereq (9, 0) \
|
|
||||||
|| __GNUC_PREREQ (12, 0))
|
|
||||||
# define __glibc_objsize0(__o) __builtin_dynamic_object_size (__o, 0)
|
|
||||||
# define __glibc_objsize(__o) __builtin_dynamic_object_size (__o, 1)
|
|
||||||
#else
|
|
||||||
# define __glibc_objsize0(__o) __bos0 (__o)
|
|
||||||
# define __glibc_objsize(__o) __bos (__o)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Compile time conditions to choose between the regular, _chk and _chk_warn
|
|
||||||
variants. These conditions should get evaluated to constant and optimized
|
|
||||||
away. */
|
|
||||||
|
|
||||||
#define __glibc_safe_len_cond(__l, __s, __osz) ((__l) <= (__osz) / (__s))
|
|
||||||
#define __glibc_unsigned_or_positive(__l) \
|
|
||||||
((__typeof (__l)) 0 < (__typeof (__l)) -1 \
|
|
||||||
|| (__builtin_constant_p (__l) && (__l) > 0))
|
|
||||||
|
|
||||||
/* Length is known to be safe at compile time if the __L * __S <= __OBJSZ
|
|
||||||
condition can be folded to a constant and if it is true. The -1 check is
|
|
||||||
redundant because since it implies that __glibc_safe_len_cond is true. */
|
|
||||||
#define __glibc_safe_or_unknown_len(__l, __s, __osz) \
|
|
||||||
(__glibc_unsigned_or_positive (__l) \
|
|
||||||
&& __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \
|
|
||||||
__s, __osz)) \
|
|
||||||
&& __glibc_safe_len_cond ((__SIZE_TYPE__) (__l), __s, __osz))
|
|
||||||
|
|
||||||
/* Conversely, we know at compile time that the length is unsafe if the
|
|
||||||
__L * __S <= __OBJSZ condition can be folded to a constant and if it is
|
|
||||||
false. */
|
|
||||||
#define __glibc_unsafe_len(__l, __s, __osz) \
|
|
||||||
(__glibc_unsigned_or_positive (__l) \
|
|
||||||
&& __builtin_constant_p (__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), \
|
|
||||||
__s, __osz)) \
|
|
||||||
&& !__glibc_safe_len_cond ((__SIZE_TYPE__) (__l), __s, __osz))
|
|
||||||
|
|
||||||
/* Fortify function f. __f_alias, __f_chk and __f_chk_warn must be
|
|
||||||
declared. */
|
|
||||||
|
|
||||||
#define __glibc_fortify(f, __l, __s, __osz, ...) \
|
|
||||||
(__glibc_safe_or_unknown_len (__l, __s, __osz) \
|
|
||||||
? __ ## f ## _alias (__VA_ARGS__) \
|
|
||||||
: (__glibc_unsafe_len (__l, __s, __osz) \
|
|
||||||
? __ ## f ## _chk_warn (__VA_ARGS__, __osz) \
|
|
||||||
: __ ## f ## _chk (__VA_ARGS__, __osz))) \
|
|
||||||
|
|
||||||
/* Fortify function f, where object size argument passed to f is the number of
|
|
||||||
elements and not total size. */
|
|
||||||
|
|
||||||
#define __glibc_fortify_n(f, __l, __s, __osz, ...) \
|
|
||||||
(__glibc_safe_or_unknown_len (__l, __s, __osz) \
|
|
||||||
? __ ## f ## _alias (__VA_ARGS__) \
|
|
||||||
: (__glibc_unsafe_len (__l, __s, __osz) \
|
|
||||||
? __ ## f ## _chk_warn (__VA_ARGS__, (__osz) / (__s)) \
|
|
||||||
: __ ## f ## _chk (__VA_ARGS__, (__osz) / (__s)))) \
|
|
||||||
|
|
||||||
#if __GNUC_PREREQ (4,3)
|
|
||||||
# define __warnattr(msg) __attribute__((__warning__ (msg)))
|
|
||||||
# define __errordecl(name, msg) \
|
|
||||||
extern void name (void) __attribute__((__error__ (msg)))
|
|
||||||
#else
|
|
||||||
# define __warnattr(msg)
|
|
||||||
# define __errordecl(name, msg) extern void name (void)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Support for flexible arrays.
|
|
||||||
Headers that should use flexible arrays only if they're "real"
|
|
||||||
(e.g. only if they won't affect sizeof()) should test
|
|
||||||
#if __glibc_c99_flexarr_available. */
|
|
||||||
#if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L && !defined __HP_cc
|
|
||||||
# define __flexarr []
|
|
||||||
# define __glibc_c99_flexarr_available 1
|
|
||||||
#elif __GNUC_PREREQ (2,97) || defined __clang__
|
|
||||||
/* GCC 2.97 and clang support C99 flexible array members as an extension,
|
|
||||||
even when in C89 mode or compiling C++ (any version). */
|
|
||||||
# define __flexarr []
|
|
||||||
# define __glibc_c99_flexarr_available 1
|
|
||||||
#elif defined __GNUC__
|
|
||||||
/* Pre-2.97 GCC did not support C99 flexible arrays but did have
|
|
||||||
an equivalent extension with slightly different notation. */
|
|
||||||
# define __flexarr [0]
|
|
||||||
# define __glibc_c99_flexarr_available 1
|
|
||||||
#else
|
|
||||||
/* Some other non-C99 compiler. Approximate with [1]. */
|
|
||||||
# define __flexarr [1]
|
|
||||||
# define __glibc_c99_flexarr_available 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
/* __asm__ ("xyz") is used throughout the headers to rename functions
|
|
||||||
at the assembly language level. This is wrapped by the __REDIRECT
|
|
||||||
macro, in order to support compilers that can do this some other
|
|
||||||
way. When compilers don't support asm-names at all, we have to do
|
|
||||||
preprocessor tricks instead (which don't have exactly the right
|
|
||||||
semantics, but it's the best we can do).
|
|
||||||
|
|
||||||
Example:
|
|
||||||
int __REDIRECT(setpgrp, (__pid_t pid, __pid_t pgrp), setpgid); */
|
|
||||||
|
|
||||||
#if (defined __GNUC__ && __GNUC__ >= 2) || (__clang_major__ >= 4)
|
|
||||||
|
|
||||||
# define __REDIRECT(name, proto, alias) name proto __asm__ (__ASMNAME (#alias))
|
|
||||||
# ifdef __cplusplus
|
|
||||||
# define __REDIRECT_NTH(name, proto, alias) \
|
|
||||||
name proto __THROW __asm__ (__ASMNAME (#alias))
|
|
||||||
# define __REDIRECT_NTHNL(name, proto, alias) \
|
|
||||||
name proto __THROWNL __asm__ (__ASMNAME (#alias))
|
|
||||||
# else
|
|
||||||
# define __REDIRECT_NTH(name, proto, alias) \
|
|
||||||
name proto __asm__ (__ASMNAME (#alias)) __THROW
|
|
||||||
# define __REDIRECT_NTHNL(name, proto, alias) \
|
|
||||||
name proto __asm__ (__ASMNAME (#alias)) __THROWNL
|
|
||||||
# endif
|
|
||||||
# define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname)
|
|
||||||
# define __ASMNAME2(prefix, cname) __STRING (prefix) cname
|
|
||||||
|
|
||||||
/*
|
|
||||||
#elif __SOME_OTHER_COMPILER__
|
|
||||||
|
|
||||||
# define __REDIRECT(name, proto, alias) name proto; \
|
|
||||||
_Pragma("let " #name " = " #alias)
|
|
||||||
*/
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* GCC and clang have various useful declarations that can be made with
|
|
||||||
the '__attribute__' syntax. All of the ways we use this do fine if
|
|
||||||
they are omitted for compilers that don't understand it. */
|
|
||||||
#if !(defined __GNUC__ || defined __clang__)
|
|
||||||
# define __attribute__(xyz) /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* At some point during the gcc 2.96 development the `malloc' attribute
|
|
||||||
for functions was introduced. We don't want to use it unconditionally
|
|
||||||
(although this would be possible) since it generates warnings. */
|
|
||||||
#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__malloc__)
|
|
||||||
# define __attribute_malloc__ __attribute__ ((__malloc__))
|
|
||||||
#else
|
|
||||||
# define __attribute_malloc__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Tell the compiler which arguments to an allocation function
|
|
||||||
indicate the size of the allocation. */
|
|
||||||
#if __GNUC_PREREQ (4, 3)
|
|
||||||
# define __attribute_alloc_size__(params) \
|
|
||||||
__attribute__ ((__alloc_size__ params))
|
|
||||||
#else
|
|
||||||
# define __attribute_alloc_size__(params) /* Ignore. */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Tell the compiler which argument to an allocation function
|
|
||||||
indicates the alignment of the allocation. */
|
|
||||||
#if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__alloc_align__)
|
|
||||||
# define __attribute_alloc_align__(param) \
|
|
||||||
__attribute__ ((__alloc_align__ param))
|
|
||||||
#else
|
|
||||||
# define __attribute_alloc_align__(param) /* Ignore. */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* At some point during the gcc 2.96 development the `pure' attribute
|
|
||||||
for functions was introduced. We don't want to use it unconditionally
|
|
||||||
(although this would be possible) since it generates warnings. */
|
|
||||||
#if __GNUC_PREREQ (2,96) || __glibc_has_attribute (__pure__)
|
|
||||||
# define __attribute_pure__ __attribute__ ((__pure__))
|
|
||||||
#else
|
|
||||||
# define __attribute_pure__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* This declaration tells the compiler that the value is constant. */
|
|
||||||
#if __GNUC_PREREQ (2,5) || __glibc_has_attribute (__const__)
|
|
||||||
# define __attribute_const__ __attribute__ ((__const__))
|
|
||||||
#else
|
|
||||||
# define __attribute_const__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __GNUC_PREREQ (2,7) || __glibc_has_attribute (__unused__)
|
|
||||||
# define __attribute_maybe_unused__ __attribute__ ((__unused__))
|
|
||||||
#else
|
|
||||||
# define __attribute_maybe_unused__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* At some point during the gcc 3.1 development the `used' attribute
|
|
||||||
for functions was introduced. We don't want to use it unconditionally
|
|
||||||
(although this would be possible) since it generates warnings. */
|
|
||||||
#if __GNUC_PREREQ (3,1) || __glibc_has_attribute (__used__)
|
|
||||||
# define __attribute_used__ __attribute__ ((__used__))
|
|
||||||
# define __attribute_noinline__ __attribute__ ((__noinline__))
|
|
||||||
#else
|
|
||||||
# define __attribute_used__ __attribute__ ((__unused__))
|
|
||||||
# define __attribute_noinline__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Since version 3.2, gcc allows marking deprecated functions. */
|
|
||||||
#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__deprecated__)
|
|
||||||
# define __attribute_deprecated__ __attribute__ ((__deprecated__))
|
|
||||||
#else
|
|
||||||
# define __attribute_deprecated__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Since version 4.5, gcc also allows one to specify the message printed
|
|
||||||
when a deprecated function is used. clang claims to be gcc 4.2, but
|
|
||||||
may also support this feature. */
|
|
||||||
#if __GNUC_PREREQ (4,5) \
|
|
||||||
|| __glibc_has_extension (__attribute_deprecated_with_message__)
|
|
||||||
# define __attribute_deprecated_msg__(msg) \
|
|
||||||
__attribute__ ((__deprecated__ (msg)))
|
|
||||||
#else
|
|
||||||
# define __attribute_deprecated_msg__(msg) __attribute_deprecated__
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* At some point during the gcc 2.8 development the `format_arg' attribute
|
|
||||||
for functions was introduced. We don't want to use it unconditionally
|
|
||||||
(although this would be possible) since it generates warnings.
|
|
||||||
If several `format_arg' attributes are given for the same function, in
|
|
||||||
gcc-3.0 and older, all but the last one are ignored. In newer gccs,
|
|
||||||
all designated arguments are considered. */
|
|
||||||
#if __GNUC_PREREQ (2,8) || __glibc_has_attribute (__format_arg__)
|
|
||||||
# define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x)))
|
|
||||||
#else
|
|
||||||
# define __attribute_format_arg__(x) /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* At some point during the gcc 2.97 development the `strfmon' format
|
|
||||||
attribute for functions was introduced. We don't want to use it
|
|
||||||
unconditionally (although this would be possible) since it
|
|
||||||
generates warnings. */
|
|
||||||
#if __GNUC_PREREQ (2,97) || __glibc_has_attribute (__format__)
|
|
||||||
# define __attribute_format_strfmon__(a,b) \
|
|
||||||
__attribute__ ((__format__ (__strfmon__, a, b)))
|
|
||||||
#else
|
|
||||||
# define __attribute_format_strfmon__(a,b) /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* The nonnull function attribute marks pointer parameters that
|
|
||||||
must not be NULL. This has the name __nonnull in glibc,
|
|
||||||
and __attribute_nonnull__ in files shared with Gnulib to avoid
|
|
||||||
collision with a different __nonnull in DragonFlyBSD 5.9. */
|
|
||||||
#ifndef __attribute_nonnull__
|
|
||||||
# if __GNUC_PREREQ (3,3) || __glibc_has_attribute (__nonnull__)
|
|
||||||
# define __attribute_nonnull__(params) __attribute__ ((__nonnull__ params))
|
|
||||||
# else
|
|
||||||
# define __attribute_nonnull__(params)
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
#ifndef __nonnull
|
|
||||||
# define __nonnull(params) __attribute_nonnull__ (params)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* The returns_nonnull function attribute marks the return type of the function
|
|
||||||
as always being non-null. */
|
|
||||||
#ifndef __returns_nonnull
|
|
||||||
# if __GNUC_PREREQ (4, 9) || __glibc_has_attribute (__returns_nonnull__)
|
|
||||||
# define __returns_nonnull __attribute__ ((__returns_nonnull__))
|
|
||||||
# else
|
|
||||||
# define __returns_nonnull
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* If fortification mode, we warn about unused results of certain
|
|
||||||
function calls which can lead to problems. */
|
|
||||||
#if __GNUC_PREREQ (3,4) || __glibc_has_attribute (__warn_unused_result__)
|
|
||||||
# define __attribute_warn_unused_result__ \
|
|
||||||
__attribute__ ((__warn_unused_result__))
|
|
||||||
# if defined __USE_FORTIFY_LEVEL && __USE_FORTIFY_LEVEL > 0
|
|
||||||
# define __wur __attribute_warn_unused_result__
|
|
||||||
# endif
|
|
||||||
#else
|
|
||||||
# define __attribute_warn_unused_result__ /* empty */
|
|
||||||
#endif
|
|
||||||
#ifndef __wur
|
|
||||||
# define __wur /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Forces a function to be always inlined. */
|
|
||||||
#if __GNUC_PREREQ (3,2) || __glibc_has_attribute (__always_inline__)
|
|
||||||
/* The Linux kernel defines __always_inline in stddef.h (283d7573), and
|
|
||||||
it conflicts with this definition. Therefore undefine it first to
|
|
||||||
allow either header to be included first. */
|
|
||||||
# undef __always_inline
|
|
||||||
# define __always_inline __inline __attribute__ ((__always_inline__))
|
|
||||||
#else
|
|
||||||
# undef __always_inline
|
|
||||||
# define __always_inline __inline
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Associate error messages with the source location of the call site rather
|
|
||||||
than with the source location inside the function. */
|
|
||||||
#if __GNUC_PREREQ (4,3) || __glibc_has_attribute (__artificial__)
|
|
||||||
# define __attribute_artificial__ __attribute__ ((__artificial__))
|
|
||||||
#else
|
|
||||||
# define __attribute_artificial__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* GCC 4.3 and above with -std=c99 or -std=gnu99 implements ISO C99
|
|
||||||
inline semantics, unless -fgnu89-inline is used. Using __GNUC_STDC_INLINE__
|
|
||||||
or __GNUC_GNU_INLINE is not a good enough check for gcc because gcc versions
|
|
||||||
older than 4.3 may define these macros and still not guarantee GNU inlining
|
|
||||||
semantics.
|
|
||||||
|
|
||||||
clang++ identifies itself as gcc-4.2, but has support for GNU inlining
|
|
||||||
semantics, that can be checked for by using the __GNUC_STDC_INLINE_ and
|
|
||||||
__GNUC_GNU_INLINE__ macro definitions. */
|
|
||||||
#if (!defined __cplusplus || __GNUC_PREREQ (4,3) \
|
|
||||||
|| (defined __clang__ && (defined __GNUC_STDC_INLINE__ \
|
|
||||||
|| defined __GNUC_GNU_INLINE__)))
|
|
||||||
# if defined __GNUC_STDC_INLINE__ || defined __cplusplus
|
|
||||||
# define __extern_inline extern __inline __attribute__ ((__gnu_inline__))
|
|
||||||
# define __extern_always_inline \
|
|
||||||
extern __always_inline __attribute__ ((__gnu_inline__))
|
|
||||||
# else
|
|
||||||
# define __extern_inline extern __inline
|
|
||||||
# define __extern_always_inline extern __always_inline
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef __extern_always_inline
|
|
||||||
# define __fortify_function __extern_always_inline __attribute_artificial__
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* GCC 4.3 and above allow passing all anonymous arguments of an
|
|
||||||
__extern_always_inline function to some other vararg function. */
|
|
||||||
#if __GNUC_PREREQ (4,3)
|
|
||||||
# define __va_arg_pack() __builtin_va_arg_pack ()
|
|
||||||
# define __va_arg_pack_len() __builtin_va_arg_pack_len ()
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* It is possible to compile containing GCC extensions even if GCC is
|
|
||||||
run in pedantic mode if the uses are carefully marked using the
|
|
||||||
`__extension__' keyword. But this is not generally available before
|
|
||||||
version 2.8. */
|
|
||||||
#if !(__GNUC_PREREQ (2,8) || defined __clang__)
|
|
||||||
# define __extension__ /* Ignore */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* __restrict is known in EGCS 1.2 and above, and in clang.
|
|
||||||
It works also in C++ mode (outside of arrays), but only when spelled
|
|
||||||
as '__restrict', not 'restrict'. */
|
|
||||||
#if !(__GNUC_PREREQ (2,92) || __clang_major__ >= 3)
|
|
||||||
# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
|
|
||||||
# define __restrict restrict
|
|
||||||
# else
|
|
||||||
# define __restrict /* Ignore */
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* ISO C99 also allows to declare arrays as non-overlapping. The syntax is
|
|
||||||
array_name[restrict]
|
|
||||||
GCC 3.1 and clang support this.
|
|
||||||
This syntax is not usable in C++ mode. */
|
|
||||||
#if (__GNUC_PREREQ (3,1) || __clang_major__ >= 3) && !defined __cplusplus
|
|
||||||
# define __restrict_arr __restrict
|
|
||||||
#else
|
|
||||||
# ifdef __GNUC__
|
|
||||||
# define __restrict_arr /* Not supported in old GCC. */
|
|
||||||
# else
|
|
||||||
# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L
|
|
||||||
# define __restrict_arr restrict
|
|
||||||
# else
|
|
||||||
/* Some other non-C99 compiler. */
|
|
||||||
# define __restrict_arr /* Not supported. */
|
|
||||||
# endif
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (__GNUC__ >= 3) || __glibc_has_builtin (__builtin_expect)
|
|
||||||
# define __glibc_unlikely(cond) __builtin_expect ((cond), 0)
|
|
||||||
# define __glibc_likely(cond) __builtin_expect ((cond), 1)
|
|
||||||
#else
|
|
||||||
# define __glibc_unlikely(cond) (cond)
|
|
||||||
# define __glibc_likely(cond) (cond)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (!defined _Noreturn \
|
|
||||||
&& (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \
|
|
||||||
&& !(__GNUC_PREREQ (4,7) \
|
|
||||||
|| (3 < __clang_major__ + (5 <= __clang_minor__))))
|
|
||||||
# if __GNUC_PREREQ (2,8)
|
|
||||||
# define _Noreturn __attribute__ ((__noreturn__))
|
|
||||||
# else
|
|
||||||
# define _Noreturn
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __GNUC_PREREQ (8, 0)
|
|
||||||
/* Describes a char array whose address can safely be passed as the first
|
|
||||||
argument to strncpy and strncat, as the char array is not necessarily
|
|
||||||
a NUL-terminated string. */
|
|
||||||
# define __attribute_nonstring__ __attribute__ ((__nonstring__))
|
|
||||||
#else
|
|
||||||
# define __attribute_nonstring__
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Undefine (also defined in libc-symbols.h). */
|
|
||||||
#undef __attribute_copy__
|
|
||||||
#if __GNUC_PREREQ (9, 0)
|
|
||||||
/* Copies attributes from the declaration or type referenced by
|
|
||||||
the argument. */
|
|
||||||
# define __attribute_copy__(arg) __attribute__ ((__copy__ (arg)))
|
|
||||||
#else
|
|
||||||
# define __attribute_copy__(arg)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if (!defined _Static_assert && !defined __cplusplus \
|
|
||||||
&& (defined __STDC_VERSION__ ? __STDC_VERSION__ : 0) < 201112 \
|
|
||||||
&& (!(__GNUC_PREREQ (4, 6) || __clang_major__ >= 4) \
|
|
||||||
|| defined __STRICT_ANSI__))
|
|
||||||
# define _Static_assert(expr, diagnostic) \
|
|
||||||
extern int (*__Static_assert_function (void)) \
|
|
||||||
[!!sizeof (struct { int __error_if_negative: (expr) ? 2 : -1; })]
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Gnulib avoids including these, as they don't work on non-glibc or
|
|
||||||
older glibc platforms. */
|
|
||||||
#ifndef __GNULIB_CDEFS
|
|
||||||
# include <bits/wordsize.h>
|
|
||||||
# include <bits/long-double.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 1
|
|
||||||
# ifdef __REDIRECT
|
|
||||||
|
|
||||||
/* Alias name defined automatically. */
|
|
||||||
# define __LDBL_REDIR(name, proto) ... unused__ldbl_redir
|
|
||||||
# define __LDBL_REDIR_DECL(name) \
|
|
||||||
extern __typeof (name) name __asm (__ASMNAME ("__" #name "ieee128"));
|
|
||||||
|
|
||||||
/* Alias name defined automatically, with leading underscores. */
|
|
||||||
# define __LDBL_REDIR2_DECL(name) \
|
|
||||||
extern __typeof (__##name) __##name \
|
|
||||||
__asm (__ASMNAME ("__" #name "ieee128"));
|
|
||||||
|
|
||||||
/* Alias name defined manually. */
|
|
||||||
# define __LDBL_REDIR1(name, proto, alias) ... unused__ldbl_redir1
|
|
||||||
# define __LDBL_REDIR1_DECL(name, alias) \
|
|
||||||
extern __typeof (name) name __asm (__ASMNAME (#alias));
|
|
||||||
|
|
||||||
# define __LDBL_REDIR1_NTH(name, proto, alias) \
|
|
||||||
__REDIRECT_NTH (name, proto, alias)
|
|
||||||
# define __REDIRECT_NTH_LDBL(name, proto, alias) \
|
|
||||||
__LDBL_REDIR1_NTH (name, proto, __##alias##ieee128)
|
|
||||||
|
|
||||||
/* Unused. */
|
|
||||||
# define __REDIRECT_LDBL(name, proto, alias) ... unused__redirect_ldbl
|
|
||||||
# define __LDBL_REDIR_NTH(name, proto) ... unused__ldbl_redir_nth
|
|
||||||
|
|
||||||
# else
|
|
||||||
_Static_assert (0, "IEEE 128-bits long double requires redirection on this platform");
|
|
||||||
# endif
|
|
||||||
#elif defined __LONG_DOUBLE_MATH_OPTIONAL && defined __NO_LONG_DOUBLE_MATH
|
|
||||||
# define __LDBL_COMPAT 1
|
|
||||||
# ifdef __REDIRECT
|
|
||||||
# define __LDBL_REDIR1(name, proto, alias) __REDIRECT (name, proto, alias)
|
|
||||||
# define __LDBL_REDIR(name, proto) \
|
|
||||||
__LDBL_REDIR1 (name, proto, __nldbl_##name)
|
|
||||||
# define __LDBL_REDIR1_NTH(name, proto, alias) __REDIRECT_NTH (name, proto, alias)
|
|
||||||
# define __LDBL_REDIR_NTH(name, proto) \
|
|
||||||
__LDBL_REDIR1_NTH (name, proto, __nldbl_##name)
|
|
||||||
# define __LDBL_REDIR2_DECL(name) \
|
|
||||||
extern __typeof (__##name) __##name __asm (__ASMNAME ("__nldbl___" #name));
|
|
||||||
# define __LDBL_REDIR1_DECL(name, alias) \
|
|
||||||
extern __typeof (name) name __asm (__ASMNAME (#alias));
|
|
||||||
# define __LDBL_REDIR_DECL(name) \
|
|
||||||
extern __typeof (name) name __asm (__ASMNAME ("__nldbl_" #name));
|
|
||||||
# define __REDIRECT_LDBL(name, proto, alias) \
|
|
||||||
__LDBL_REDIR1 (name, proto, __nldbl_##alias)
|
|
||||||
# define __REDIRECT_NTH_LDBL(name, proto, alias) \
|
|
||||||
__LDBL_REDIR1_NTH (name, proto, __nldbl_##alias)
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
#if (!defined __LDBL_COMPAT && __LDOUBLE_REDIRECTS_TO_FLOAT128_ABI == 0) \
|
|
||||||
|| !defined __REDIRECT
|
|
||||||
# define __LDBL_REDIR1(name, proto, alias) name proto
|
|
||||||
# define __LDBL_REDIR(name, proto) name proto
|
|
||||||
# define __LDBL_REDIR1_NTH(name, proto, alias) name proto __THROW
|
|
||||||
# define __LDBL_REDIR_NTH(name, proto) name proto __THROW
|
|
||||||
# define __LDBL_REDIR2_DECL(name)
|
|
||||||
# define __LDBL_REDIR_DECL(name)
|
|
||||||
# ifdef __REDIRECT
|
|
||||||
# define __REDIRECT_LDBL(name, proto, alias) __REDIRECT (name, proto, alias)
|
|
||||||
# define __REDIRECT_NTH_LDBL(name, proto, alias) \
|
|
||||||
__REDIRECT_NTH (name, proto, alias)
|
|
||||||
# endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* __glibc_macro_warning (MESSAGE) issues warning MESSAGE. This is
|
|
||||||
intended for use in preprocessor macros.
|
|
||||||
|
|
||||||
Note: MESSAGE must be a _single_ string; concatenation of string
|
|
||||||
literals is not supported. */
|
|
||||||
#if __GNUC_PREREQ (4,8) || __glibc_clang_prereq (3,5)
|
|
||||||
# define __glibc_macro_warning1(message) _Pragma (#message)
|
|
||||||
# define __glibc_macro_warning(message) \
|
|
||||||
__glibc_macro_warning1 (GCC warning message)
|
|
||||||
#else
|
|
||||||
# define __glibc_macro_warning(msg)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Generic selection (ISO C11) is a C-only feature, available in GCC
|
|
||||||
since version 4.9. Previous versions do not provide generic
|
|
||||||
selection, even though they might set __STDC_VERSION__ to 201112L,
|
|
||||||
when in -std=c11 mode. Thus, we must check for !defined __GNUC__
|
|
||||||
when testing __STDC_VERSION__ for generic selection support.
|
|
||||||
On the other hand, Clang also defines __GNUC__, so a clang-specific
|
|
||||||
check is required to enable the use of generic selection. */
|
|
||||||
#if !defined __cplusplus \
|
|
||||||
&& (__GNUC_PREREQ (4, 9) \
|
|
||||||
|| __glibc_has_extension (c_generic_selections) \
|
|
||||||
|| (!defined __GNUC__ && defined __STDC_VERSION__ \
|
|
||||||
&& __STDC_VERSION__ >= 201112L))
|
|
||||||
# define __HAVE_GENERIC_SELECTION 1
|
|
||||||
#else
|
|
||||||
# define __HAVE_GENERIC_SELECTION 0
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __GNUC_PREREQ (10, 0)
|
|
||||||
/* Designates a 1-based positional argument ref-index of pointer type
|
|
||||||
that can be used to access size-index elements of the pointed-to
|
|
||||||
array according to access mode, or at least one element when
|
|
||||||
size-index is not provided:
|
|
||||||
access (access-mode, <ref-index> [, <size-index>]) */
|
|
||||||
# define __attr_access(x) __attribute__ ((__access__ x))
|
|
||||||
/* For _FORTIFY_SOURCE == 3 we use __builtin_dynamic_object_size, which may
|
|
||||||
use the access attribute to get object sizes from function definition
|
|
||||||
arguments, so we can't use them on functions we fortify. Drop the object
|
|
||||||
size hints for such functions. */
|
|
||||||
# if __USE_FORTIFY_LEVEL == 3
|
|
||||||
# define __fortified_attr_access(a, o, s) __attribute__ ((__access__ (a, o)))
|
|
||||||
# else
|
|
||||||
# define __fortified_attr_access(a, o, s) __attr_access ((a, o, s))
|
|
||||||
# endif
|
|
||||||
# if __GNUC_PREREQ (11, 0)
|
|
||||||
# define __attr_access_none(argno) __attribute__ ((__access__ (__none__, argno)))
|
|
||||||
# else
|
|
||||||
# define __attr_access_none(argno)
|
|
||||||
# endif
|
|
||||||
#else
|
|
||||||
# define __fortified_attr_access(a, o, s)
|
|
||||||
# define __attr_access(x)
|
|
||||||
# define __attr_access_none(argno)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if __GNUC_PREREQ (11, 0)
|
|
||||||
/* Designates dealloc as a function to call to deallocate objects
|
|
||||||
allocated by the declared function. */
|
|
||||||
# define __attr_dealloc(dealloc, argno) \
|
|
||||||
__attribute__ ((__malloc__ (dealloc, argno)))
|
|
||||||
# define __attr_dealloc_free __attr_dealloc (__builtin_free, 1)
|
|
||||||
#else
|
|
||||||
# define __attr_dealloc(dealloc, argno)
|
|
||||||
# define __attr_dealloc_free
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Specify that a function such as setjmp or vfork may return
|
|
||||||
twice. */
|
|
||||||
#if __GNUC_PREREQ (4, 1)
|
|
||||||
# define __attribute_returns_twice__ __attribute__ ((__returns_twice__))
|
|
||||||
#else
|
|
||||||
# define __attribute_returns_twice__ /* Ignore. */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#endif /* sys/cdefs.h */
|
|
11
default.el
11
default.el
@ -4,4 +4,13 @@
|
|||||||
;;; prevents loading of this file. Also the "-q" option to emacs
|
;;; prevents loading of this file. Also the "-q" option to emacs
|
||||||
;;; prevents both "~/.emacs" and this file from being loaded at startup.
|
;;; prevents both "~/.emacs" and this file from being loaded at startup.
|
||||||
|
|
||||||
(setq-default smime-CA-directory "/etc/ssl/certs")
|
;; always end a file with a newline
|
||||||
|
(setq require-final-newline 'query)
|
||||||
|
|
||||||
|
(when window-system
|
||||||
|
;; enable wheelmouse support by default
|
||||||
|
(mwheel-install)
|
||||||
|
;; make switching frames works properly under the default click-to-focus
|
||||||
|
(setq focus-follows-mouse nil))
|
||||||
|
|
||||||
|
(auto-compression-mode t)
|
||||||
|
24
dotemacs.el
24
dotemacs.el
@ -1,12 +1,18 @@
|
|||||||
;; .emacs
|
;; .emacs
|
||||||
|
|
||||||
(custom-set-variables
|
;;; uncomment this line to disable loading of "default.el" at startup
|
||||||
;; uncomment to always end a file with a newline
|
;; (setq inhibit-default-init t)
|
||||||
;'(require-final-newline t)
|
|
||||||
;; uncomment to disable loading of "default.el" at startup
|
|
||||||
;'(inhibit-default-init t)
|
|
||||||
;; default to unified diffs
|
|
||||||
'(diff-switches "-u"))
|
|
||||||
|
|
||||||
;;; uncomment for CJK utf-8 support for non-Asian users
|
;; turn on font-lock mode
|
||||||
;; (require 'un-define)
|
(when (fboundp 'global-font-lock-mode)
|
||||||
|
(global-font-lock-mode t))
|
||||||
|
|
||||||
|
;; enable visual feedback on selections
|
||||||
|
;(setq transient-mark-mode t)
|
||||||
|
|
||||||
|
;; default to better frame titles
|
||||||
|
(setq frame-title-format
|
||||||
|
(concat "%b - emacs@" system-name))
|
||||||
|
|
||||||
|
;; default to unified diffs
|
||||||
|
(setq diff-switches "-u")
|
||||||
|
@ -1,31 +0,0 @@
|
|||||||
From a56539c1d7ef7aa56e575685bdfe1406aebb518d Mon Sep 17 00:00:00 2001
|
|
||||||
From: Peter Oliver <git@mavit.org.uk>
|
|
||||||
Date: Wed, 5 Feb 2020 12:42:04 +0000
|
|
||||||
Subject: [PATCH] =?UTF-8?q?Don=E2=80=99t=20assemble=20systemdunitdir=20fro?=
|
|
||||||
=?UTF-8?q?m=20`libdir`?=
|
|
||||||
MIME-Version: 1.0
|
|
||||||
Content-Type: text/plain; charset=UTF-8
|
|
||||||
Content-Transfer-Encoding: 8bit
|
|
||||||
|
|
||||||
On 64 bit Fedora, `libdir` is `/usr/lib64`, whereas systemd services
|
|
||||||
live under `/usr/lib/systemd`.
|
|
||||||
---
|
|
||||||
Makefile.in | 2 +-
|
|
||||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
||||||
|
|
||||||
diff --git a/Makefile.in b/Makefile.in
|
|
||||||
index 2c82c49fba..b2468eb824 100644
|
|
||||||
--- a/Makefile.in
|
|
||||||
+++ b/Makefile.in
|
|
||||||
@@ -208,7 +208,7 @@ appdatadir=
|
|
||||||
# Other options include ~/.config/systemd/user/,
|
|
||||||
# $XDG_RUNTIME_DIR/systemd/user/
|
|
||||||
# It seems the user may end up having to make a manual link...
|
|
||||||
-systemdunitdir=$(libdir)/systemd/user
|
|
||||||
+systemdunitdir=$(shell pkg-config --variable=systemduserunitdir systemd)
|
|
||||||
|
|
||||||
# Where the etc/images/icons/hicolor directory is to be installed.
|
|
||||||
icondir=$(datarootdir)/icons
|
|
||||||
--
|
|
||||||
2.24.1
|
|
||||||
|
|
@ -1,171 +0,0 @@
|
|||||||
From e81f1faca4382ed5c8f15fec84fb7c900a5468f9 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Glenn Morris <rgm@gnu.org>
|
|
||||||
Date: Mon, 11 Oct 2021 14:03:26 +0200
|
|
||||||
Subject: Make the installed pmdp file use a fingerprint
|
|
||||||
|
|
||||||
* Makefile.in (EMACS_PDMP): Use --fingerprint.
|
|
||||||
|
|
||||||
* doc/emacs/cmdargs.texi (Action Arguments): Document --fingerprint.
|
|
||||||
|
|
||||||
* src/emacs.c (load_pdump): Load the fingerprinted version of the
|
|
||||||
pdmp file (bug#42790).
|
|
||||||
(main): Support --fingerprint.
|
|
||||||
|
|
||||||
* src/pdumper.c (dump_fingerprint): Make non-static.
|
|
||||||
|
|
||||||
* src/pdumper.h: Declare dump_fingerprint.
|
|
||||||
---
|
|
||||||
Makefile.in | 3 ++-
|
|
||||||
doc/emacs/cmdargs.texi | 5 +++++
|
|
||||||
src/emacs.c | 31 +++++++++++++++++++++++++++++--
|
|
||||||
src/pdumper.c | 2 +-
|
|
||||||
src/pdumper.h | 3 +++
|
|
||||||
5 files changed, 40 insertions(+), 4 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/Makefile.in b/Makefile.in
|
|
||||||
index 5fc1edc..c6c507f 100644
|
|
||||||
--- a/Makefile.in
|
|
||||||
+++ b/Makefile.in
|
|
||||||
@@ -313,6 +313,7 @@ TRANSFORM = @program_transform_name@
|
|
||||||
EMACS_NAME = `echo emacs | sed '$(TRANSFORM)'`
|
|
||||||
EMACS = ${EMACS_NAME}${EXEEXT}
|
|
||||||
EMACSFULL = `echo emacs-${version} | sed '$(TRANSFORM)'`${EXEEXT}
|
|
||||||
+EMACS_PDMP = `./src/emacs${EXEEXT} --fingerprint 2>&1 | sed 's/.* //'`.pdmp
|
|
||||||
|
|
||||||
# Subdirectories to make recursively.
|
|
||||||
SUBDIR = $(NTDIR) lib lib-src src lisp
|
|
||||||
@@ -521,7 +522,7 @@ install-arch-dep: src install-arch-indep install-etcdoc install-$(NTDIR)
|
|
||||||
ifeq (${ns_self_contained},no)
|
|
||||||
${INSTALL_PROGRAM} $(INSTALL_STRIP) src/emacs${EXEEXT} "$(DESTDIR)${bindir}/$(EMACSFULL)"
|
|
||||||
ifeq (${DUMPING},pdumper)
|
|
||||||
- ${INSTALL_DATA} src/emacs.pdmp "$(DESTDIR)${libexecdir}/emacs/${version}/${configuration}"/emacs.pdmp
|
|
||||||
+ ${INSTALL_DATA} src/emacs.pdmp "$(DESTDIR)${libexecdir}/emacs/${version}/${configuration}"/emacs-${EMACS_PDMP}
|
|
||||||
endif
|
|
||||||
-chmod 755 "$(DESTDIR)${bindir}/$(EMACSFULL)"
|
|
||||||
ifndef NO_BIN_LINK
|
|
||||||
diff --git a/doc/emacs/cmdargs.texi b/doc/emacs/cmdargs.texi
|
|
||||||
index d5177fa..313682b 100644
|
|
||||||
--- a/doc/emacs/cmdargs.texi
|
|
||||||
+++ b/doc/emacs/cmdargs.texi
|
|
||||||
@@ -185,6 +185,11 @@ successfully.
|
|
||||||
@item --version
|
|
||||||
@opindex --version
|
|
||||||
Print Emacs version, then exit successfully.
|
|
||||||
+
|
|
||||||
+@item --fingerprint
|
|
||||||
+@opindex --fingerprint
|
|
||||||
+Print the Emacs ``fingerprint'', which is used to uniquely identify
|
|
||||||
+the compiled version of Emacs.
|
|
||||||
@end table
|
|
||||||
|
|
||||||
@node Initial Options
|
|
||||||
diff --git a/src/emacs.c b/src/emacs.c
|
|
||||||
index 866e43f..cda7a9b 100644
|
|
||||||
--- a/src/emacs.c
|
|
||||||
+++ b/src/emacs.c
|
|
||||||
@@ -133,6 +133,7 @@ extern char etext;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "pdumper.h"
|
|
||||||
+#include "fingerprint.h"
|
|
||||||
#include "epaths.h"
|
|
||||||
|
|
||||||
static const char emacs_version[] = PACKAGE_VERSION;
|
|
||||||
@@ -255,6 +256,7 @@ Initialization options:\n\
|
|
||||||
#ifdef HAVE_PDUMPER
|
|
||||||
"\
|
|
||||||
--dump-file FILE read dumped state from FILE\n\
|
|
||||||
+--fingerprint output fingerprint and exit\n\
|
|
||||||
",
|
|
||||||
#endif
|
|
||||||
#if SECCOMP_USABLE
|
|
||||||
@@ -830,6 +832,8 @@ load_pdump (int argc, char **argv)
|
|
||||||
const char *const suffix = ".pdmp";
|
|
||||||
int result;
|
|
||||||
char *emacs_executable = argv[0];
|
|
||||||
+ ptrdiff_t hexbuf_size;
|
|
||||||
+ char *hexbuf;
|
|
||||||
const char *strip_suffix =
|
|
||||||
#if defined DOS_NT || defined CYGWIN
|
|
||||||
".exe"
|
|
||||||
@@ -927,9 +931,15 @@ load_pdump (int argc, char **argv)
|
|
||||||
/* Look for "emacs.pdmp" in PATH_EXEC. We hardcode "emacs" in
|
|
||||||
"emacs.pdmp" so that the Emacs binary still works if the user
|
|
||||||
copies and renames it. */
|
|
||||||
+ hexbuf_size = 2 * sizeof fingerprint;
|
|
||||||
+ hexbuf = xmalloc (hexbuf_size + 1);
|
|
||||||
+ hexbuf_digest (hexbuf, (char *)fingerprint, sizeof fingerprint);
|
|
||||||
+ hexbuf[hexbuf_size] = '\0';
|
|
||||||
needed = (strlen (path_exec)
|
|
||||||
+ 1
|
|
||||||
+ strlen (argv0_base)
|
|
||||||
+ + 1
|
|
||||||
+ + strlen (hexbuf)
|
|
||||||
+ strlen (suffix)
|
|
||||||
+ 1);
|
|
||||||
if (bufsize < needed)
|
|
||||||
@@ -937,8 +947,8 @@ load_pdump (int argc, char **argv)
|
|
||||||
xfree (dump_file);
|
|
||||||
dump_file = xpalloc (NULL, &bufsize, needed - bufsize, -1, 1);
|
|
||||||
}
|
|
||||||
- sprintf (dump_file, "%s%c%s%s",
|
|
||||||
- path_exec, DIRECTORY_SEP, argv0_base, suffix);
|
|
||||||
+ sprintf (dump_file, "%s%c%s-%s%s",
|
|
||||||
+ path_exec, DIRECTORY_SEP, argv0_base, hexbuf, suffix);
|
|
||||||
#if !defined (NS_SELF_CONTAINED)
|
|
||||||
/* Assume the Emacs binary lives in a sibling directory as set up by
|
|
||||||
the default installation configuration. */
|
|
||||||
@@ -1387,6 +1397,23 @@ main (int argc, char **argv)
|
|
||||||
exit (0);
|
|
||||||
}
|
|
||||||
|
|
||||||
+#ifdef HAVE_PDUMPER
|
|
||||||
+ if (argmatch (argv, argc, "-fingerprint", "--fingerprint", 4,
|
|
||||||
+ NULL, &skip_args))
|
|
||||||
+ {
|
|
||||||
+ if (initialized)
|
|
||||||
+ {
|
|
||||||
+ dump_fingerprint ("fingerprint", (unsigned char *)fingerprint);
|
|
||||||
+ exit (0);
|
|
||||||
+ }
|
|
||||||
+ else
|
|
||||||
+ {
|
|
||||||
+ fputs ("Not initialized\n", stderr);
|
|
||||||
+ exit (1);
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
emacs_wd = emacs_get_current_dir_name ();
|
|
||||||
#ifdef HAVE_PDUMPER
|
|
||||||
if (dumped_with_pdumper_p ())
|
|
||||||
diff --git a/src/pdumper.c b/src/pdumper.c
|
|
||||||
index 11c680d..977f4fb 100644
|
|
||||||
--- a/src/pdumper.c
|
|
||||||
+++ b/src/pdumper.c
|
|
||||||
@@ -312,7 +312,7 @@ dump_reloc_set_offset (struct dump_reloc *reloc, dump_off offset)
|
|
||||||
error ("dump relocation out of range");
|
|
||||||
}
|
|
||||||
|
|
||||||
-static void
|
|
||||||
+void
|
|
||||||
dump_fingerprint (char const *label,
|
|
||||||
unsigned char const xfingerprint[sizeof fingerprint])
|
|
||||||
{
|
|
||||||
diff --git a/src/pdumper.h b/src/pdumper.h
|
|
||||||
index deec9af..bc339c4 100644
|
|
||||||
--- a/src/pdumper.h
|
|
||||||
+++ b/src/pdumper.h
|
|
||||||
@@ -50,6 +50,9 @@ enum { PDUMPER_NO_OBJECT = -1 };
|
|
||||||
#define PDUMPER_REMEMBER_SCALAR(thing) \
|
|
||||||
pdumper_remember_scalar (&(thing), sizeof (thing))
|
|
||||||
|
|
||||||
+extern void dump_fingerprint (const char *label,
|
|
||||||
+ const unsigned char *xfingerprint);
|
|
||||||
+
|
|
||||||
extern void pdumper_remember_scalar_impl (void *data, ptrdiff_t nbytes);
|
|
||||||
|
|
||||||
INLINE void
|
|
||||||
--
|
|
||||||
cgit v1.1
|
|
||||||
|
|
@ -1,22 +0,0 @@
|
|||||||
diff --git a/lisp/textmodes/ispell.el b/lisp/textmodes/ispell.el
|
|
||||||
index 0a3a49d868..b6c0975857 100644
|
|
||||||
--- a/lisp/textmodes/ispell.el
|
|
||||||
+++ b/lisp/textmodes/ispell.el
|
|
||||||
@@ -191,12 +191,12 @@ Must be greater than 1."
|
|
||||||
:type 'integer)
|
|
||||||
|
|
||||||
(defcustom ispell-program-name
|
|
||||||
- (or (executable-find "aspell")
|
|
||||||
- (executable-find "ispell")
|
|
||||||
+ ;; Enchant is commonly installed as `enchant-2', so use this
|
|
||||||
+ ;; name and avoid old versions of `enchant'.
|
|
||||||
+ (or (executable-find "enchant-2")
|
|
||||||
(executable-find "hunspell")
|
|
||||||
- ;; Enchant is commonly installed as `enchant-2', so use this
|
|
||||||
- ;; name and avoid old versions of `enchant'.
|
|
||||||
- (executable-find "enchant-2")
|
|
||||||
+ (executable-find "aspell")
|
|
||||||
+ (executable-find "ispell")
|
|
||||||
"ispell")
|
|
||||||
"Program invoked by \\[ispell-word] and \\[ispell-region] commands."
|
|
||||||
:type 'string
|
|
@ -1,11 +0,0 @@
|
|||||||
--- a/src/gnutls.c 2016-01-24 10:29:58.000000000 +0100
|
|
||||||
+++ b/src/gnutls.c 2016-02-02 09:32:28.477274274 +0100
|
|
||||||
@@ -1557,7 +1557,7 @@
|
|
||||||
gnutls_certificate_credentials_t x509_cred = NULL;
|
|
||||||
gnutls_anon_client_credentials_t anon_cred = NULL;
|
|
||||||
Lisp_Object global_init;
|
|
||||||
- char const *priority_string_ptr = "NORMAL"; /* default priority string. */
|
|
||||||
+ char const *priority_string_ptr = "@SYSTEM"; /* default priority string. */
|
|
||||||
char *c_hostname;
|
|
||||||
|
|
||||||
/* Placeholders for the property list elements. */
|
|
@ -1,11 +0,0 @@
|
|||||||
[Desktop Entry]
|
|
||||||
Name=Emacs Terminal
|
|
||||||
GenericName=Emacs Terminal
|
|
||||||
Comment=Emacs Terminal Mode
|
|
||||||
Exec=emacs-terminal
|
|
||||||
Icon=utilities-terminal
|
|
||||||
Type=Application
|
|
||||||
Terminal=false
|
|
||||||
Categories=Application;Utility;X-Red-Hat-Base;GTK;TerminalEmulator;
|
|
||||||
Encoding=UTF-8
|
|
||||||
StartupWMClass=Emacs
|
|
@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
exec /usr/bin/emacs -Q --eval '(term "/bin/bash")'
|
|
32
emacs.desktop
Normal file
32
emacs.desktop
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Name=Emacs Text Editor
|
||||||
|
Name[bg]=редактор Emacs
|
||||||
|
Name[ca]=Editor Emacs
|
||||||
|
Name[cs]=Editor Emacs
|
||||||
|
Name[da]=Emacs tekstredigerer
|
||||||
|
Name[de]=Emacs Texteditor
|
||||||
|
Name[eo]=La redaktilo Emakso
|
||||||
|
Name[et]=Võimas tekstiredaktor Emacs
|
||||||
|
Name[fi]=Emacs editori
|
||||||
|
Name[fr]=Éditeur Emacs
|
||||||
|
Name[hu]=Emacs szövegszerkesztő
|
||||||
|
Name[is]=Emacs-ritill
|
||||||
|
Name[ja]=Emacs テキスト・エディター
|
||||||
|
Name[mk]=Софистицираниот Emacs уредувач
|
||||||
|
Name[no]=Emacs-tekstredigerer
|
||||||
|
Name[pt]=Editor Emacs
|
||||||
|
Name[ro]=Editorul Emacs
|
||||||
|
Name[ru]=Редактор Emacs
|
||||||
|
Name[sk]=Editor Emacs
|
||||||
|
Name[sl]=Urejevalnik Emacs
|
||||||
|
Name[uk]=Редактор Emacs
|
||||||
|
GenericName=Text Editor
|
||||||
|
Comment=Edit text
|
||||||
|
MimeType=text/english;text/plain;text/x-makefile;text/x-c++hdr;text/x-c++src;text/x-chdr;text/x-csrc;text/x-java;text/x-moc;text/x-pascal;text/x-tcl;text/x-tex;application/x-shellscript;text/x-c;text/x-c++;
|
||||||
|
Exec=emacs %f
|
||||||
|
Icon=emacs.png
|
||||||
|
Type=Application
|
||||||
|
Terminal=false
|
||||||
|
Categories=Application;Development;TextEditor;X-Red-Hat-Base;
|
||||||
|
Encoding=UTF-8
|
||||||
|
StartupWMClass=Emacs
|
1808
emacs.spec
1808
emacs.spec
File diff suppressed because it is too large
Load Diff
@ -1,53 +0,0 @@
|
|||||||
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
|
||||||
Comment: 17E9 0D52 1672 C046 31B1 183E E78D AE0F 3115 E06B
|
|
||||||
Comment: Eli Zaretskii <eliz@gnu.org>
|
|
||||||
|
|
||||||
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
|
|
||||||
=+3ql
|
|
||||||
-----END PGP PUBLIC KEY BLOCK-----
|
|
6
php-mode-init.el
Normal file
6
php-mode-init.el
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
;; Use php-mode for .php,.php3,.php4 and .phtml files
|
||||||
|
|
||||||
|
(autoload 'php-mode "php-mode")
|
||||||
|
(add-to-list 'auto-mode-alist
|
||||||
|
'("\\.php[34]\\'\\|\\.php\\'\\|\\.phtml\\'" . php-mode))
|
||||||
|
|
13
po-mode-auto-replace-date-71264.patch
Normal file
13
po-mode-auto-replace-date-71264.patch
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
diff -u po-mode.el~ po-mode.el
|
||||||
|
--- po-mode.el~ 2003-01-16 01:44:50.000000000 +0900
|
||||||
|
+++ po-mode.el 2003-01-16 01:44:50.000000000 +0900
|
||||||
|
@@ -1267,8 +1267,7 @@
|
||||||
|
(concat "\"PO-Revision-Date: "
|
||||||
|
(format-time-string "%Y-%m-%d %H:%M" time)
|
||||||
|
zone "\\n\"")
|
||||||
|
- t t))))
|
||||||
|
- (message ""))
|
||||||
|
+ t t)))))
|
||||||
|
(message (_"PO-Revision-Date should be adjusted..."))))
|
||||||
|
|
||||||
|
;;; Handling span of entry, entry type and entry attributes.
|
9
po-mode-init.el
Normal file
9
po-mode-init.el
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
;; Use po-mode for translation files
|
||||||
|
|
||||||
|
(autoload 'po-mode "po-mode"
|
||||||
|
"Major mode for translators to edit PO files" t)
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.po\\'\\|\\.po\\." . po-mode))
|
||||||
|
|
||||||
|
(autoload 'po-find-file-coding-system "po-compat")
|
||||||
|
(modify-coding-system-alist 'file "\\.po\\'\\|\\.po\\."
|
||||||
|
'po-find-file-coding-system)
|
3314
po-mode.el
Normal file
3314
po-mode.el
Normal file
File diff suppressed because it is too large
Load Diff
6
python-mode-init.el
Normal file
6
python-mode-init.el
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
;; setup python support
|
||||||
|
|
||||||
|
(autoload 'python-mode "python-mode" "Python mode." t)
|
||||||
|
(autoload 'py-shell "python-mode" "Python shell mode." t)
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.py$" . python-mode))
|
||||||
|
(add-to-list 'interpreter-mode-alist '("python" . python-mode))
|
3258
python-mode.el
Normal file
3258
python-mode.el
Normal file
File diff suppressed because it is too large
Load Diff
BIN
rfc1345.el
Normal file
BIN
rfc1345.el
Normal file
Binary file not shown.
4
rpm-spec-mode-init.el
Normal file
4
rpm-spec-mode-init.el
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
;; rpm-spec-mode for spec files
|
||||||
|
|
||||||
|
(autoload 'rpm-spec-mode "rpm-spec-mode" "RPM spec mode." t)
|
||||||
|
(add-to-list 'auto-mode-alist '("\\.spec$" . rpm-spec-mode))
|
1343
rpm-spec-mode.el
Normal file
1343
rpm-spec-mode.el
Normal file
File diff suppressed because it is too large
Load Diff
43
rpm-spec-mode.el-0.14-xemacs-compat.patch
Normal file
43
rpm-spec-mode.el-0.14-xemacs-compat.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
diff -u rpm-spec-mode.el~ rpm-spec-mode.el
|
||||||
|
--- rpm-spec-mode.el~ 2002-12-02 12:00:38.000000000 +0900
|
||||||
|
+++ rpm-spec-mode.el 2002-12-02 12:00:38.000000000 +0900
|
||||||
|
@@ -105,6 +105,10 @@
|
||||||
|
:type 'string
|
||||||
|
:group 'rpm-spec)
|
||||||
|
|
||||||
|
+;; XEmacs compatibility function
|
||||||
|
+(unless (fboundp 'define-obsolete-variable-alias)
|
||||||
|
+ (defalias 'define-obsolete-variable-alias 'make-obsolete-variable))
|
||||||
|
+
|
||||||
|
(define-obsolete-variable-alias
|
||||||
|
'rpm-completion-ignore-case 'rpm-spec-completion-ignore-case)
|
||||||
|
|
||||||
|
@@ -597,6 +601,14 @@
|
||||||
|
|
||||||
|
;;------------------------------------------------------------
|
||||||
|
|
||||||
|
+;; XEmacs compatibility function
|
||||||
|
+(unless (fboundp 'user-mail-address)
|
||||||
|
+ (defun user-mail-address ()
|
||||||
|
+ "Return value of `user-mail-address'.
|
||||||
|
+
|
||||||
|
+XEmacs sendmail compatibility function."
|
||||||
|
+ user-mail-address))
|
||||||
|
+
|
||||||
|
(defun rpm-add-change-log-entry (&optional change-log-entry)
|
||||||
|
"Find change log and add an entry for today."
|
||||||
|
(interactive "sChange log entry: ")
|
||||||
|
@@ -1117,6 +1129,13 @@
|
||||||
|
|
||||||
|
;;------------------------------------------------------------
|
||||||
|
|
||||||
|
+;; XEmacs compatibility function
|
||||||
|
+(unless (fboundp 'ignore-errors)
|
||||||
|
+ (defmacro ignore-errors (&rest body)
|
||||||
|
+ "Execute FORMS; if an error occurs, return nil.
|
||||||
|
+Otherwise, return result of last FORM."
|
||||||
|
+ `(condition-case nil (progn ,@body) (error nil))))
|
||||||
|
+
|
||||||
|
(defun rpm-spec-field-value (field max)
|
||||||
|
"Get the value of FIELD, searching up to buffer position MAX.
|
||||||
|
See `search-forward-regexp'."
|
@ -1,9 +1,5 @@
|
|||||||
;;; loaded before user's ".emacs" file and default.el
|
;;; loaded before user's ".emacs" file and default.el
|
||||||
|
|
||||||
;; load *.el and *.elc in /usr/share/emacs/site-lisp/site-start.d on startup
|
;; load ".el" files in "/usr/share/emacs/site-lisp/site-start.d/" on startup
|
||||||
(mapc
|
(mapc 'load
|
||||||
'load
|
(directory-files "/usr/share/emacs/site-lisp/site-start.d" t "\\.el\\'"))
|
||||||
(delete-dups
|
|
||||||
(mapcar 'file-name-sans-extension
|
|
||||||
(directory-files
|
|
||||||
"/usr/share/emacs/site-lisp/site-start.d" t "\\.elc?\\'"))))
|
|
||||||
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
|||||||
SHA512 (emacs-28.1.tar.xz) = c146ff7086aba49fa6c18adf4e485a59eb4c6525fddb9d385034446830b8bb0ac9e6fb76e7b6d94a9fddc41643415f36acad57a1ae16a841c97f61bc211459d9
|
aad009f7cff4019aac9a466ec9b55aaf php-mode-1.1.0.tgz
|
||||||
SHA512 (emacs-28.1.tar.xz.sig) = cc905fb3d75c2f03c491fb1e0edd883312147d65125a667dcf77e6a078a6381f0674e321feba24a205d819275b6f31282a54910b3fc1c1284421a0fd35a2882a
|
269c234ef2b7afb168222191e66756a4 emacs-22.0.50-20050406.tar.gz
|
||||||
|
201
ssl.el
Normal file
201
ssl.el
Normal file
@ -0,0 +1,201 @@
|
|||||||
|
;;; ssl.el,v --- ssl functions for emacsen without them builtin
|
||||||
|
;; Author: wmperry
|
||||||
|
;; Created: 1999/10/14 12:44:18
|
||||||
|
;; Version: 1.2
|
||||||
|
;; Keywords: comm
|
||||||
|
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
;;; Copyright (c) 1995, 1996 by William M. Perry <wmperry@cs.indiana.edu>
|
||||||
|
;;; Copyright (c) 1996 - 1999 Free Software Foundation, Inc.
|
||||||
|
;;;
|
||||||
|
;;; This file is part of GNU Emacs.
|
||||||
|
;;;
|
||||||
|
;;; GNU Emacs is free software; you can redistribute it and/or modify
|
||||||
|
;;; it under the terms of the GNU General Public License as published by
|
||||||
|
;;; the Free Software Foundation; either version 2, or (at your option)
|
||||||
|
;;; any later version.
|
||||||
|
;;;
|
||||||
|
;;; GNU Emacs is distributed in the hope that it will be useful,
|
||||||
|
;;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;;; GNU General Public License for more details.
|
||||||
|
;;;
|
||||||
|
;;; You should have received a copy of the GNU General Public License
|
||||||
|
;;; along with GNU Emacs; see the file COPYING. If not, write to the
|
||||||
|
;;; Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
|
;;; Boston, MA 02111-1307, USA.
|
||||||
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
|
||||||
|
(require 'cl)
|
||||||
|
(require 'base64)
|
||||||
|
|
||||||
|
(eval-and-compile
|
||||||
|
(condition-case ()
|
||||||
|
(require 'custom)
|
||||||
|
(error nil))
|
||||||
|
(if (and (featurep 'custom) (fboundp 'custom-declare-variable))
|
||||||
|
nil ;; We've got what we needed
|
||||||
|
;; We have the old custom-library, hack around it!
|
||||||
|
(defmacro defgroup (&rest args)
|
||||||
|
nil)
|
||||||
|
(defmacro defcustom (var value doc &rest args)
|
||||||
|
(` (defvar (, var) (, value) (, doc))))))
|
||||||
|
|
||||||
|
(defgroup ssl nil
|
||||||
|
"Support for `Secure Sockets Layer' encryption."
|
||||||
|
:group 'comm)
|
||||||
|
|
||||||
|
(defcustom ssl-certificate-directory "~/.w3/certs/"
|
||||||
|
"*Directory to store CA certificates in"
|
||||||
|
:group 'ssl
|
||||||
|
:type 'directory)
|
||||||
|
|
||||||
|
(defcustom ssl-rehash-program-name "c_rehash"
|
||||||
|
"*Program to run after adding a cert to a directory .
|
||||||
|
Run with one argument, the directory name."
|
||||||
|
:group 'ssl
|
||||||
|
:type 'string)
|
||||||
|
|
||||||
|
(defcustom ssl-view-certificate-program-name "x509"
|
||||||
|
"*The program to run to provide a human-readable view of a certificate."
|
||||||
|
:group 'ssl
|
||||||
|
:type 'string)
|
||||||
|
|
||||||
|
(defcustom ssl-view-certificate-program-arguments '("-text" "-inform" "DER")
|
||||||
|
"*Arguments that should be passed to the certificate viewing program.
|
||||||
|
The certificate is piped to it.
|
||||||
|
Maybe a way of passing a file should be implemented"
|
||||||
|
:group 'ssl
|
||||||
|
:type 'list)
|
||||||
|
|
||||||
|
(defcustom ssl-certificate-directory-style 'ssleay
|
||||||
|
"*Style of cert database to use, the only valid value right now is `ssleay'.
|
||||||
|
This means a directory of pem encoded certificates with hash symlinks."
|
||||||
|
:group 'ssl
|
||||||
|
:type '(choice (const :tag "SSLeay" :value ssleay)
|
||||||
|
(const :tag "OpenSSL" :value openssl)))
|
||||||
|
|
||||||
|
(defcustom ssl-certificate-verification-policy 0
|
||||||
|
"*How far up the certificate chain we should verify."
|
||||||
|
:group 'ssl
|
||||||
|
:type '(choice (const :tag "No verification" :value 0)
|
||||||
|
(const :tag "Verification required" :value 1)
|
||||||
|
(const :tag "Reject connection if verification fails" :value 3)
|
||||||
|
(const :tag "SSL_VERIFY_CLIENT_ONCE" :value 5)))
|
||||||
|
|
||||||
|
(defcustom ssl-program-name "openssl"
|
||||||
|
"*The program to run in a subprocess to open an SSL connection."
|
||||||
|
:group 'ssl
|
||||||
|
:type 'string)
|
||||||
|
|
||||||
|
(defcustom ssl-program-arguments
|
||||||
|
'("s_client"
|
||||||
|
"-quiet"
|
||||||
|
"-host" host
|
||||||
|
"-port" service
|
||||||
|
"-verify" (int-to-string ssl-certificate-verification-policy)
|
||||||
|
"-CApath" ssl-certificate-directory
|
||||||
|
)
|
||||||
|
"*Arguments that should be passed to the program `ssl-program-name'.
|
||||||
|
This should be used if your SSL program needs command line switches to
|
||||||
|
specify any behaviour (certificate file locations, etc).
|
||||||
|
The special symbols 'host and 'port may be used in the list of arguments
|
||||||
|
and will be replaced with the hostname and service/port that will be connected
|
||||||
|
to."
|
||||||
|
:group 'ssl
|
||||||
|
:type 'list)
|
||||||
|
|
||||||
|
(defun ssl-certificate-information (der)
|
||||||
|
"Return an assoc list of information about a certificate in DER format."
|
||||||
|
(let ((certificate (concat "-----BEGIN CERTIFICATE-----\n"
|
||||||
|
(base64-encode-string der)
|
||||||
|
"\n-----END CERTIFICATE-----\n"))
|
||||||
|
(exit-code 0))
|
||||||
|
(save-excursion
|
||||||
|
(set-buffer (get-buffer-create " *openssl*"))
|
||||||
|
(erase-buffer)
|
||||||
|
(insert certificate)
|
||||||
|
(setq exit-code (condition-case ()
|
||||||
|
(call-process-region (point-min) (point-max)
|
||||||
|
ssl-program-name
|
||||||
|
t (list (current-buffer) nil) t
|
||||||
|
"x509"
|
||||||
|
"-subject" ; Print the subject DN
|
||||||
|
"-issuer" ; Print the issuer DN
|
||||||
|
"-dates" ; Both before and after dates
|
||||||
|
"-serial" ; print out serial number
|
||||||
|
"-noout" ; Don't spit out the certificate
|
||||||
|
)
|
||||||
|
(error -1)))
|
||||||
|
(if (/= exit-code 0)
|
||||||
|
nil
|
||||||
|
(let ((vals nil))
|
||||||
|
(goto-char (point-min))
|
||||||
|
(while (re-search-forward "^\\([^=\n\r]+\\)\\s *=\\s *\\(.*\\)" nil t)
|
||||||
|
(push (cons (match-string 1) (match-string 2)) vals))
|
||||||
|
vals)))))
|
||||||
|
|
||||||
|
(defun ssl-accept-ca-certificate ()
|
||||||
|
"Ask if the user is willing to accept a new CA certificate. The buffer-name
|
||||||
|
should be the intended name of the certificate, and the buffer should probably
|
||||||
|
be in DER encoding"
|
||||||
|
;; TODO, check if it is really new or if we already know it
|
||||||
|
(let* ((process-connection-type nil)
|
||||||
|
(tmpbuf (generate-new-buffer "X509 CA Certificate Information"))
|
||||||
|
(response (save-excursion
|
||||||
|
(and (eq 0
|
||||||
|
(apply 'call-process-region
|
||||||
|
(point-min) (point-max)
|
||||||
|
ssl-view-certificate-program-name
|
||||||
|
nil tmpbuf t
|
||||||
|
ssl-view-certificate-program-arguments))
|
||||||
|
(switch-to-buffer tmpbuf)
|
||||||
|
(goto-char (point-min))
|
||||||
|
(or (recenter) t)
|
||||||
|
(yes-or-no-p
|
||||||
|
"Accept this CA to vouch for secure server identities? ")
|
||||||
|
(kill-buffer tmpbuf)))))
|
||||||
|
(if (not response)
|
||||||
|
nil
|
||||||
|
(if (not (file-directory-p ssl-certificate-directory))
|
||||||
|
(make-directory ssl-certificate-directory))
|
||||||
|
(case ssl-certificate-directory-style
|
||||||
|
(ssleay
|
||||||
|
(base64-encode-region (point-min) (point-max))
|
||||||
|
(goto-char (point-min))
|
||||||
|
(insert "-----BEGIN CERTIFICATE-----\n")
|
||||||
|
(goto-char (point-max))
|
||||||
|
(insert "-----END CERTIFICATE-----\n")
|
||||||
|
(let ((f (expand-file-name
|
||||||
|
(concat (file-name-sans-extension (buffer-name)) ".pem")
|
||||||
|
ssl-certificate-directory)))
|
||||||
|
(write-file f)
|
||||||
|
(call-process ssl-rehash-program-name
|
||||||
|
nil nil nil
|
||||||
|
(expand-file-name ssl-certificate-directory))))))))
|
||||||
|
|
||||||
|
(defun open-ssl-stream (name buffer host service)
|
||||||
|
"Open a SSL connection for a service to a host.
|
||||||
|
Returns a subprocess-object to represent the connection.
|
||||||
|
Input and output work as for subprocesses; `delete-process' closes it.
|
||||||
|
Args are NAME BUFFER HOST SERVICE.
|
||||||
|
NAME is name for process. It is modified if necessary to make it unique.
|
||||||
|
BUFFER is the buffer (or buffer-name) to associate with the process.
|
||||||
|
Process output goes at end of that buffer, unless you specify
|
||||||
|
an output stream or filter function to handle the output.
|
||||||
|
BUFFER may be also nil, meaning that this process is not associated
|
||||||
|
with any buffer
|
||||||
|
Third arg is name of the host to connect to, or its IP address.
|
||||||
|
Fourth arg SERVICE is name of the service desired, or an integer
|
||||||
|
specifying a port number to connect to."
|
||||||
|
(if (integerp service) (setq service (int-to-string service)))
|
||||||
|
(let* ((process-connection-type nil)
|
||||||
|
(port service)
|
||||||
|
(proc (eval
|
||||||
|
(`
|
||||||
|
(start-process name buffer ssl-program-name
|
||||||
|
(,@ ssl-program-arguments))))))
|
||||||
|
(process-kill-without-query proc)
|
||||||
|
proc))
|
||||||
|
|
||||||
|
(provide 'ssl)
|
Loading…
Reference in New Issue
Block a user