change python config, add jupyter and ein
This commit is contained in:
@@ -0,0 +1,148 @@
|
||||
emacs_zmq_la-constants.lo: constants.c /usr/include/stdc-predef.h core.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h
|
||||
/usr/include/stdc-predef.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
@@ -0,0 +1,149 @@
|
||||
emacs_zmq_la-context.lo: context.c /usr/include/stdc-predef.h context.h \
|
||||
core.h /usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h
|
||||
/usr/include/stdc-predef.h:
|
||||
context.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
@@ -0,0 +1,150 @@
|
||||
emacs_zmq_la-core.lo: core.c /usr/include/stdc-predef.h core.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h \
|
||||
/usr/include/assert.h
|
||||
/usr/include/stdc-predef.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
/usr/include/assert.h:
|
||||
@@ -0,0 +1,157 @@
|
||||
emacs_zmq_la-emacs-zmq.lo: emacs-zmq.c /usr/include/stdc-predef.h \
|
||||
emacs-zmq.h core.h /usr/include/stdlib.h \
|
||||
/usr/include/bits/libc-header-start.h /usr/include/features.h \
|
||||
/usr/include/features-time64.h /usr/include/bits/wordsize.h \
|
||||
/usr/include/bits/timesize.h /usr/include/sys/cdefs.h \
|
||||
/usr/include/bits/long-double.h /usr/include/gnu/stubs.h \
|
||||
/usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h \
|
||||
util.h msg.h socket.h context.h poll.h /usr/include/assert.h
|
||||
/usr/include/stdc-predef.h:
|
||||
emacs-zmq.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
util.h:
|
||||
msg.h:
|
||||
socket.h:
|
||||
context.h:
|
||||
poll.h:
|
||||
/usr/include/assert.h:
|
||||
@@ -0,0 +1,149 @@
|
||||
emacs_zmq_la-msg.lo: msg.c /usr/include/stdc-predef.h msg.h core.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h
|
||||
/usr/include/stdc-predef.h:
|
||||
msg.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
@@ -0,0 +1,149 @@
|
||||
emacs_zmq_la-poll.lo: poll.c /usr/include/stdc-predef.h poll.h core.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h
|
||||
/usr/include/stdc-predef.h:
|
||||
poll.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
@@ -0,0 +1,151 @@
|
||||
emacs_zmq_la-socket.lo: socket.c /usr/include/stdc-predef.h socket.h \
|
||||
core.h /usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h \
|
||||
/usr/include/assert.h
|
||||
/usr/include/stdc-predef.h:
|
||||
socket.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
/usr/include/assert.h:
|
||||
@@ -0,0 +1,149 @@
|
||||
emacs_zmq_la-util.lo: util.c /usr/include/stdc-predef.h util.h core.h \
|
||||
/usr/include/stdlib.h /usr/include/bits/libc-header-start.h \
|
||||
/usr/include/features.h /usr/include/features-time64.h \
|
||||
/usr/include/bits/wordsize.h /usr/include/bits/timesize.h \
|
||||
/usr/include/sys/cdefs.h /usr/include/bits/long-double.h \
|
||||
/usr/include/gnu/stubs.h /usr/include/gnu/stubs-64.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h \
|
||||
/usr/include/bits/waitflags.h /usr/include/bits/waitstatus.h \
|
||||
/usr/include/bits/floatn.h /usr/include/bits/floatn-common.h \
|
||||
/usr/include/sys/types.h /usr/include/bits/types.h \
|
||||
/usr/include/bits/typesizes.h /usr/include/bits/time64.h \
|
||||
/usr/include/bits/types/clock_t.h /usr/include/bits/types/clockid_t.h \
|
||||
/usr/include/bits/types/time_t.h /usr/include/bits/types/timer_t.h \
|
||||
/usr/include/bits/stdint-intn.h /usr/include/endian.h \
|
||||
/usr/include/bits/endian.h /usr/include/bits/endianness.h \
|
||||
/usr/include/bits/byteswap.h /usr/include/bits/uintn-identity.h \
|
||||
/usr/include/sys/select.h /usr/include/bits/select.h \
|
||||
/usr/include/bits/types/sigset_t.h /usr/include/bits/types/__sigset_t.h \
|
||||
/usr/include/bits/types/struct_timeval.h \
|
||||
/usr/include/bits/types/struct_timespec.h \
|
||||
/usr/include/bits/pthreadtypes.h /usr/include/bits/thread-shared-types.h \
|
||||
/usr/include/bits/pthreadtypes-arch.h \
|
||||
/usr/include/bits/atomic_wide_counter.h /usr/include/bits/struct_mutex.h \
|
||||
/usr/include/bits/struct_rwlock.h /usr/include/alloca.h \
|
||||
/usr/include/bits/stdlib-bsearch.h /usr/include/bits/stdlib-float.h \
|
||||
/usr/include/string.h /usr/include/bits/types/locale_t.h \
|
||||
/usr/include/bits/types/__locale_t.h /usr/include/strings.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h \
|
||||
/usr/include/zmq.h /usr/include/errno.h /usr/include/bits/errno.h \
|
||||
/usr/include/linux/errno.h /usr/include/asm/errno.h \
|
||||
/usr/include/asm-generic/errno.h /usr/include/asm-generic/errno-base.h \
|
||||
/usr/include/stdio.h /usr/include/bits/types/__fpos_t.h \
|
||||
/usr/include/bits/types/__mbstate_t.h \
|
||||
/usr/include/bits/types/__fpos64_t.h /usr/include/bits/types/__FILE.h \
|
||||
/usr/include/bits/types/FILE.h /usr/include/bits/types/struct_FILE.h \
|
||||
/usr/include/bits/types/cookie_io_functions_t.h \
|
||||
/usr/include/bits/stdio_lim.h /usr/include/bits/stdio.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h \
|
||||
/usr/include/stdint.h /usr/include/bits/wchar.h \
|
||||
/usr/include/bits/stdint-uintn.h /usr/include/bits/stdint-least.h \
|
||||
/usr/include/signal.h /usr/include/bits/signum-generic.h \
|
||||
/usr/include/bits/signum-arch.h /usr/include/bits/types/sig_atomic_t.h \
|
||||
/usr/include/bits/types/siginfo_t.h /usr/include/bits/types/__sigval_t.h \
|
||||
/usr/include/bits/siginfo-arch.h /usr/include/bits/siginfo-consts.h \
|
||||
/usr/include/bits/types/sigval_t.h /usr/include/bits/types/sigevent_t.h \
|
||||
/usr/include/bits/sigevent-consts.h /usr/include/bits/sigaction.h \
|
||||
/usr/include/bits/sigcontext.h /usr/include/bits/types/stack_t.h \
|
||||
/usr/include/sys/ucontext.h /usr/include/bits/sigstack.h \
|
||||
/usr/include/bits/sigstksz.h /usr/include/bits/ss_flags.h \
|
||||
/usr/include/bits/types/struct_sigstack.h /usr/include/bits/sigthread.h \
|
||||
/usr/include/bits/signal_ext.h \
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h emacs-module.h
|
||||
/usr/include/stdc-predef.h:
|
||||
util.h:
|
||||
core.h:
|
||||
/usr/include/stdlib.h:
|
||||
/usr/include/bits/libc-header-start.h:
|
||||
/usr/include/features.h:
|
||||
/usr/include/features-time64.h:
|
||||
/usr/include/bits/wordsize.h:
|
||||
/usr/include/bits/timesize.h:
|
||||
/usr/include/sys/cdefs.h:
|
||||
/usr/include/bits/long-double.h:
|
||||
/usr/include/gnu/stubs.h:
|
||||
/usr/include/gnu/stubs-64.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stddef.h:
|
||||
/usr/include/bits/waitflags.h:
|
||||
/usr/include/bits/waitstatus.h:
|
||||
/usr/include/bits/floatn.h:
|
||||
/usr/include/bits/floatn-common.h:
|
||||
/usr/include/sys/types.h:
|
||||
/usr/include/bits/types.h:
|
||||
/usr/include/bits/typesizes.h:
|
||||
/usr/include/bits/time64.h:
|
||||
/usr/include/bits/types/clock_t.h:
|
||||
/usr/include/bits/types/clockid_t.h:
|
||||
/usr/include/bits/types/time_t.h:
|
||||
/usr/include/bits/types/timer_t.h:
|
||||
/usr/include/bits/stdint-intn.h:
|
||||
/usr/include/endian.h:
|
||||
/usr/include/bits/endian.h:
|
||||
/usr/include/bits/endianness.h:
|
||||
/usr/include/bits/byteswap.h:
|
||||
/usr/include/bits/uintn-identity.h:
|
||||
/usr/include/sys/select.h:
|
||||
/usr/include/bits/select.h:
|
||||
/usr/include/bits/types/sigset_t.h:
|
||||
/usr/include/bits/types/__sigset_t.h:
|
||||
/usr/include/bits/types/struct_timeval.h:
|
||||
/usr/include/bits/types/struct_timespec.h:
|
||||
/usr/include/bits/pthreadtypes.h:
|
||||
/usr/include/bits/thread-shared-types.h:
|
||||
/usr/include/bits/pthreadtypes-arch.h:
|
||||
/usr/include/bits/atomic_wide_counter.h:
|
||||
/usr/include/bits/struct_mutex.h:
|
||||
/usr/include/bits/struct_rwlock.h:
|
||||
/usr/include/alloca.h:
|
||||
/usr/include/bits/stdlib-bsearch.h:
|
||||
/usr/include/bits/stdlib-float.h:
|
||||
/usr/include/string.h:
|
||||
/usr/include/bits/types/locale_t.h:
|
||||
/usr/include/bits/types/__locale_t.h:
|
||||
/usr/include/strings.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdarg.h:
|
||||
/usr/include/zmq.h:
|
||||
/usr/include/errno.h:
|
||||
/usr/include/bits/errno.h:
|
||||
/usr/include/linux/errno.h:
|
||||
/usr/include/asm/errno.h:
|
||||
/usr/include/asm-generic/errno.h:
|
||||
/usr/include/asm-generic/errno-base.h:
|
||||
/usr/include/stdio.h:
|
||||
/usr/include/bits/types/__fpos_t.h:
|
||||
/usr/include/bits/types/__mbstate_t.h:
|
||||
/usr/include/bits/types/__fpos64_t.h:
|
||||
/usr/include/bits/types/__FILE.h:
|
||||
/usr/include/bits/types/FILE.h:
|
||||
/usr/include/bits/types/struct_FILE.h:
|
||||
/usr/include/bits/types/cookie_io_functions_t.h:
|
||||
/usr/include/bits/stdio_lim.h:
|
||||
/usr/include/bits/stdio.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdint.h:
|
||||
/usr/include/stdint.h:
|
||||
/usr/include/bits/wchar.h:
|
||||
/usr/include/bits/stdint-uintn.h:
|
||||
/usr/include/bits/stdint-least.h:
|
||||
/usr/include/signal.h:
|
||||
/usr/include/bits/signum-generic.h:
|
||||
/usr/include/bits/signum-arch.h:
|
||||
/usr/include/bits/types/sig_atomic_t.h:
|
||||
/usr/include/bits/types/siginfo_t.h:
|
||||
/usr/include/bits/types/__sigval_t.h:
|
||||
/usr/include/bits/siginfo-arch.h:
|
||||
/usr/include/bits/siginfo-consts.h:
|
||||
/usr/include/bits/types/sigval_t.h:
|
||||
/usr/include/bits/types/sigevent_t.h:
|
||||
/usr/include/bits/sigevent-consts.h:
|
||||
/usr/include/bits/sigaction.h:
|
||||
/usr/include/bits/sigcontext.h:
|
||||
/usr/include/bits/types/stack_t.h:
|
||||
/usr/include/sys/ucontext.h:
|
||||
/usr/include/bits/sigstack.h:
|
||||
/usr/include/bits/sigstksz.h:
|
||||
/usr/include/bits/ss_flags.h:
|
||||
/usr/include/bits/types/struct_sigstack.h:
|
||||
/usr/include/bits/sigthread.h:
|
||||
/usr/include/bits/signal_ext.h:
|
||||
/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/include/stdbool.h:
|
||||
emacs-module.h:
|
||||
Symlink
+1
@@ -0,0 +1 @@
|
||||
../emacs-zmq.la
|
||||
@@ -0,0 +1,41 @@
|
||||
# emacs-zmq.la - a libtool library file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# The name that we can dlopen(3).
|
||||
dlname='emacs-zmq.so'
|
||||
|
||||
# Names of this library.
|
||||
library_names='emacs-zmq.so emacs-zmq.so emacs-zmq.so'
|
||||
|
||||
# The name of the static archive.
|
||||
old_library=''
|
||||
|
||||
# Linker flags that cannot go in dependency_libs.
|
||||
inherited_linker_flags=''
|
||||
|
||||
# Libraries that this one depends upon.
|
||||
dependency_libs=' -lzmq'
|
||||
|
||||
# Names of additional weak libraries provided by this library
|
||||
weak_library_names=''
|
||||
|
||||
# Version information for emacs-zmq.
|
||||
current=0
|
||||
age=0
|
||||
revision=0
|
||||
|
||||
# Is this an already installed library?
|
||||
installed=yes
|
||||
|
||||
# Should we warn about portability when linking against -modules?
|
||||
shouldnotlink=yes
|
||||
|
||||
# Files to dlopen/dlpreopen
|
||||
dlopen=''
|
||||
dlpreopen=''
|
||||
|
||||
# Directory that this library needs to be installed in:
|
||||
libdir='/home/daniel/repos/emacs-conf/lisp/zmq/lib'
|
||||
Executable
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,19 @@
|
||||
SUBDIRS = $(MAYBE_LIBZMQ)
|
||||
ACLOCAL_AMFLAGS = -I m4
|
||||
|
||||
lib_LTLIBRARIES = emacs-zmq.la
|
||||
|
||||
emacs_zmq_la_CFLAGS =
|
||||
emacs_zmq_la_LDFLAGS = -module -avoid-version -shrext $(MODULE_EXT)
|
||||
if WINDOWS
|
||||
emacs_zmq_la_LDFLAGS += -no-undefined
|
||||
endif
|
||||
|
||||
if ZMQ_BUILD_LOCALLY
|
||||
# Its necessary to pass static libraries directly to the linker since libtool
|
||||
# won't build emacs-zmq as a dynamic module on Windows otherwise.
|
||||
emacs_zmq_la_LDFLAGS += -Wl,libzmq/src/.libs/libzmq.a
|
||||
emacs_zmq_la_CFLAGS += -Ilibzmq/include -fvisibility=hidden
|
||||
emacs_zmq_la_CPPFLAGS = -DZMQ_BUILD_DRAFT_API=1
|
||||
endif
|
||||
emacs_zmq_la_SOURCES = socket.c context.c msg.c constants.c util.c core.c poll.c emacs-zmq.c
|
||||
File diff suppressed because it is too large
Load Diff
Vendored
+1559
File diff suppressed because it is too large
Load Diff
Executable
+271
@@ -0,0 +1,271 @@
|
||||
#! /bin/sh
|
||||
# Wrapper for Microsoft lib.exe
|
||||
|
||||
me=ar-lib
|
||||
scriptversion=2019-07-04.01; # UTC
|
||||
|
||||
# Copyright (C) 2010-2021 Free Software Foundation, Inc.
|
||||
# Written by Peter Rosin <peda@lysator.liu.se>.
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
|
||||
# func_error message
|
||||
func_error ()
|
||||
{
|
||||
echo "$me: $1" 1>&2
|
||||
exit 1
|
||||
}
|
||||
|
||||
file_conv=
|
||||
|
||||
# func_file_conv build_file
|
||||
# Convert a $build file to $host form and store it in $file
|
||||
# Currently only supports Windows hosts.
|
||||
func_file_conv ()
|
||||
{
|
||||
file=$1
|
||||
case $file in
|
||||
/ | /[!/]*) # absolute file, and not a UNC file
|
||||
if test -z "$file_conv"; then
|
||||
# lazily determine how to convert abs files
|
||||
case `uname -s` in
|
||||
MINGW*)
|
||||
file_conv=mingw
|
||||
;;
|
||||
CYGWIN* | MSYS*)
|
||||
file_conv=cygwin
|
||||
;;
|
||||
*)
|
||||
file_conv=wine
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case $file_conv in
|
||||
mingw)
|
||||
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||
;;
|
||||
cygwin | msys)
|
||||
file=`cygpath -m "$file" || echo "$file"`
|
||||
;;
|
||||
wine)
|
||||
file=`winepath -w "$file" || echo "$file"`
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# func_at_file at_file operation archive
|
||||
# Iterate over all members in AT_FILE performing OPERATION on ARCHIVE
|
||||
# for each of them.
|
||||
# When interpreting the content of the @FILE, do NOT use func_file_conv,
|
||||
# since the user would need to supply preconverted file names to
|
||||
# binutils ar, at least for MinGW.
|
||||
func_at_file ()
|
||||
{
|
||||
operation=$2
|
||||
archive=$3
|
||||
at_file_contents=`cat "$1"`
|
||||
eval set x "$at_file_contents"
|
||||
shift
|
||||
|
||||
for member
|
||||
do
|
||||
$AR -NOLOGO $operation:"$member" "$archive" || exit $?
|
||||
done
|
||||
}
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
func_error "no command. Try '$0 --help' for more information."
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<EOF
|
||||
Usage: $me [--help] [--version] PROGRAM ACTION ARCHIVE [MEMBER...]
|
||||
|
||||
Members may be specified in a file named with @FILE.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "$me, version $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
if test $# -lt 3; then
|
||||
func_error "you must specify a program, an action and an archive"
|
||||
fi
|
||||
|
||||
AR=$1
|
||||
shift
|
||||
while :
|
||||
do
|
||||
if test $# -lt 2; then
|
||||
func_error "you must specify a program, an action and an archive"
|
||||
fi
|
||||
case $1 in
|
||||
-lib | -LIB \
|
||||
| -ltcg | -LTCG \
|
||||
| -machine* | -MACHINE* \
|
||||
| -subsystem* | -SUBSYSTEM* \
|
||||
| -verbose | -VERBOSE \
|
||||
| -wx* | -WX* )
|
||||
AR="$AR $1"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
action=$1
|
||||
shift
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
orig_archive=$1
|
||||
shift
|
||||
func_file_conv "$orig_archive"
|
||||
archive=$file
|
||||
|
||||
# strip leading dash in $action
|
||||
action=${action#-}
|
||||
|
||||
delete=
|
||||
extract=
|
||||
list=
|
||||
quick=
|
||||
replace=
|
||||
index=
|
||||
create=
|
||||
|
||||
while test -n "$action"
|
||||
do
|
||||
case $action in
|
||||
d*) delete=yes ;;
|
||||
x*) extract=yes ;;
|
||||
t*) list=yes ;;
|
||||
q*) quick=yes ;;
|
||||
r*) replace=yes ;;
|
||||
s*) index=yes ;;
|
||||
S*) ;; # the index is always updated implicitly
|
||||
c*) create=yes ;;
|
||||
u*) ;; # TODO: don't ignore the update modifier
|
||||
v*) ;; # TODO: don't ignore the verbose modifier
|
||||
*)
|
||||
func_error "unknown action specified"
|
||||
;;
|
||||
esac
|
||||
action=${action#?}
|
||||
done
|
||||
|
||||
case $delete$extract$list$quick$replace,$index in
|
||||
yes,* | ,yes)
|
||||
;;
|
||||
yesyes*)
|
||||
func_error "more than one action specified"
|
||||
;;
|
||||
*)
|
||||
func_error "no action specified"
|
||||
;;
|
||||
esac
|
||||
|
||||
if test -n "$delete"; then
|
||||
if test ! -f "$orig_archive"; then
|
||||
func_error "archive not found"
|
||||
fi
|
||||
for member
|
||||
do
|
||||
case $1 in
|
||||
@*)
|
||||
func_at_file "${1#@}" -REMOVE "$archive"
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$1"
|
||||
$AR -NOLOGO -REMOVE:"$file" "$archive" || exit $?
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
elif test -n "$extract"; then
|
||||
if test ! -f "$orig_archive"; then
|
||||
func_error "archive not found"
|
||||
fi
|
||||
if test $# -gt 0; then
|
||||
for member
|
||||
do
|
||||
case $1 in
|
||||
@*)
|
||||
func_at_file "${1#@}" -EXTRACT "$archive"
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$1"
|
||||
$AR -NOLOGO -EXTRACT:"$file" "$archive" || exit $?
|
||||
;;
|
||||
esac
|
||||
done
|
||||
else
|
||||
$AR -NOLOGO -LIST "$archive" | tr -d '\r' | sed -e 's/\\/\\\\/g' \
|
||||
| while read member
|
||||
do
|
||||
$AR -NOLOGO -EXTRACT:"$member" "$archive" || exit $?
|
||||
done
|
||||
fi
|
||||
|
||||
elif test -n "$quick$replace"; then
|
||||
if test ! -f "$orig_archive"; then
|
||||
if test -z "$create"; then
|
||||
echo "$me: creating $orig_archive"
|
||||
fi
|
||||
orig_archive=
|
||||
else
|
||||
orig_archive=$archive
|
||||
fi
|
||||
|
||||
for member
|
||||
do
|
||||
case $1 in
|
||||
@*)
|
||||
func_file_conv "${1#@}"
|
||||
set x "$@" "@$file"
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$1"
|
||||
set x "$@" "$file"
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
shift
|
||||
done
|
||||
|
||||
if test -n "$orig_archive"; then
|
||||
$AR -NOLOGO -OUT:"$archive" "$orig_archive" "$@" || exit $?
|
||||
else
|
||||
$AR -NOLOGO -OUT:"$archive" "$@" || exit $?
|
||||
fi
|
||||
|
||||
elif test -n "$list"; then
|
||||
if test ! -f "$orig_archive"; then
|
||||
func_error "archive not found"
|
||||
fi
|
||||
$AR -NOLOGO -LIST "$archive" || exit $?
|
||||
fi
|
||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,626 @@
|
||||
# This file was generated by Autom4te 2.72.
|
||||
# It contains the lists of macros which have been traced.
|
||||
# It can be safely removed.
|
||||
|
||||
@request = (
|
||||
bless( [
|
||||
'0',
|
||||
1,
|
||||
[
|
||||
'/usr/share/autoconf'
|
||||
],
|
||||
[
|
||||
'/usr/share/autoconf/autoconf/autoconf.m4f',
|
||||
'/usr/share/aclocal-1.16/internal/ac-config-macro-dirs.m4',
|
||||
'/usr/share/aclocal/libtool.m4',
|
||||
'/usr/share/aclocal/ltargz.m4',
|
||||
'/usr/share/aclocal/ltdl.m4',
|
||||
'/usr/share/aclocal/ltoptions.m4',
|
||||
'/usr/share/aclocal/ltsugar.m4',
|
||||
'/usr/share/aclocal/ltversion.m4',
|
||||
'/usr/share/aclocal/lt~obsolete.m4',
|
||||
'/usr/share/aclocal/pkg.m4',
|
||||
'/usr/share/aclocal-1.16/amversion.m4',
|
||||
'/usr/share/aclocal-1.16/ar-lib.m4',
|
||||
'/usr/share/aclocal-1.16/auxdir.m4',
|
||||
'/usr/share/aclocal-1.16/cond.m4',
|
||||
'/usr/share/aclocal-1.16/depend.m4',
|
||||
'/usr/share/aclocal-1.16/depout.m4',
|
||||
'/usr/share/aclocal-1.16/init.m4',
|
||||
'/usr/share/aclocal-1.16/install-sh.m4',
|
||||
'/usr/share/aclocal-1.16/lead-dot.m4',
|
||||
'/usr/share/aclocal-1.16/make.m4',
|
||||
'/usr/share/aclocal-1.16/missing.m4',
|
||||
'/usr/share/aclocal-1.16/options.m4',
|
||||
'/usr/share/aclocal-1.16/prog-cc-c-o.m4',
|
||||
'/usr/share/aclocal-1.16/runlog.m4',
|
||||
'/usr/share/aclocal-1.16/sanity.m4',
|
||||
'/usr/share/aclocal-1.16/silent.m4',
|
||||
'/usr/share/aclocal-1.16/strip.m4',
|
||||
'/usr/share/aclocal-1.16/substnot.m4',
|
||||
'/usr/share/aclocal-1.16/tar.m4',
|
||||
'configure.ac'
|
||||
],
|
||||
{
|
||||
'AC_CHECK_LIBM' => 1,
|
||||
'AC_CONFIG_MACRO_DIR' => 1,
|
||||
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
|
||||
'AC_DEFUN' => 1,
|
||||
'AC_DEFUN_ONCE' => 1,
|
||||
'AC_DEPLIBS_CHECK_METHOD' => 1,
|
||||
'AC_DISABLE_FAST_INSTALL' => 1,
|
||||
'AC_DISABLE_SHARED' => 1,
|
||||
'AC_DISABLE_STATIC' => 1,
|
||||
'AC_ENABLE_FAST_INSTALL' => 1,
|
||||
'AC_ENABLE_SHARED' => 1,
|
||||
'AC_ENABLE_STATIC' => 1,
|
||||
'AC_LIBLTDL_CONVENIENCE' => 1,
|
||||
'AC_LIBLTDL_INSTALLABLE' => 1,
|
||||
'AC_LIBTOOL_COMPILER_OPTION' => 1,
|
||||
'AC_LIBTOOL_CONFIG' => 1,
|
||||
'AC_LIBTOOL_CXX' => 1,
|
||||
'AC_LIBTOOL_DLOPEN' => 1,
|
||||
'AC_LIBTOOL_DLOPEN_SELF' => 1,
|
||||
'AC_LIBTOOL_F77' => 1,
|
||||
'AC_LIBTOOL_FC' => 1,
|
||||
'AC_LIBTOOL_GCJ' => 1,
|
||||
'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_C_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LINKER_OPTION' => 1,
|
||||
'AC_LIBTOOL_OBJDIR' => 1,
|
||||
'AC_LIBTOOL_PICMODE' => 1,
|
||||
'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
|
||||
'AC_LIBTOOL_PROG_CC_C_O' => 1,
|
||||
'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
|
||||
'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
|
||||
'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
|
||||
'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
|
||||
'AC_LIBTOOL_RC' => 1,
|
||||
'AC_LIBTOOL_SETUP' => 1,
|
||||
'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
|
||||
'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
|
||||
'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
|
||||
'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
|
||||
'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
|
||||
'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
|
||||
'AC_LIBTOOL_WIN32_DLL' => 1,
|
||||
'AC_LIB_LTDL' => 1,
|
||||
'AC_LTDL_DLLIB' => 1,
|
||||
'AC_LTDL_DLSYM_USCORE' => 1,
|
||||
'AC_LTDL_ENABLE_INSTALL' => 1,
|
||||
'AC_LTDL_OBJDIR' => 1,
|
||||
'AC_LTDL_PREOPEN' => 1,
|
||||
'AC_LTDL_SHLIBEXT' => 1,
|
||||
'AC_LTDL_SHLIBPATH' => 1,
|
||||
'AC_LTDL_SYMBOL_USCORE' => 1,
|
||||
'AC_LTDL_SYSSEARCHPATH' => 1,
|
||||
'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
|
||||
'AC_PATH_MAGIC' => 1,
|
||||
'AC_PATH_TOOL_PREFIX' => 1,
|
||||
'AC_PROG_EGREP' => 1,
|
||||
'AC_PROG_LD' => 1,
|
||||
'AC_PROG_LD_GNU' => 1,
|
||||
'AC_PROG_LD_RELOAD_FLAG' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_PROG_NM' => 1,
|
||||
'AC_WITH_LTDL' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AM_AUX_DIR_EXPAND' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AM_DEP_TRACK' => 1,
|
||||
'AM_DISABLE_SHARED' => 1,
|
||||
'AM_DISABLE_STATIC' => 1,
|
||||
'AM_ENABLE_SHARED' => 1,
|
||||
'AM_ENABLE_STATIC' => 1,
|
||||
'AM_INIT_AUTOMAKE' => 1,
|
||||
'AM_MAKE_INCLUDE' => 1,
|
||||
'AM_MISSING_HAS_RUN' => 1,
|
||||
'AM_MISSING_PROG' => 1,
|
||||
'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
|
||||
'AM_PROG_AR' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'AM_PROG_INSTALL_SH' => 1,
|
||||
'AM_PROG_INSTALL_STRIP' => 1,
|
||||
'AM_PROG_LD' => 1,
|
||||
'AM_PROG_LIBTOOL' => 1,
|
||||
'AM_PROG_NM' => 1,
|
||||
'AM_RUN_LOG' => 1,
|
||||
'AM_SANITY_CHECK' => 1,
|
||||
'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
|
||||
'AM_SET_DEPDIR' => 1,
|
||||
'AM_SET_LEADING_DOT' => 1,
|
||||
'AM_SILENT_RULES' => 1,
|
||||
'AM_SUBST_NOTMAKE' => 1,
|
||||
'AU_DEFUN' => 1,
|
||||
'LTDL_CONVENIENCE' => 1,
|
||||
'LTDL_INIT' => 1,
|
||||
'LTDL_INSTALLABLE' => 1,
|
||||
'LTOBSOLETE_VERSION' => 1,
|
||||
'LTOPTIONS_VERSION' => 1,
|
||||
'LTSUGAR_VERSION' => 1,
|
||||
'LTVERSION_VERSION' => 1,
|
||||
'LT_AC_PROG_EGREP' => 1,
|
||||
'LT_AC_PROG_GCJ' => 1,
|
||||
'LT_AC_PROG_RC' => 1,
|
||||
'LT_AC_PROG_SED' => 1,
|
||||
'LT_CMD_MAX_LEN' => 1,
|
||||
'LT_CONFIG_LTDL_DIR' => 1,
|
||||
'LT_FUNC_ARGZ' => 1,
|
||||
'LT_FUNC_DLSYM_USCORE' => 1,
|
||||
'LT_INIT' => 1,
|
||||
'LT_LANG' => 1,
|
||||
'LT_LIB_DLLOAD' => 1,
|
||||
'LT_LIB_M' => 1,
|
||||
'LT_OUTPUT' => 1,
|
||||
'LT_PATH_LD' => 1,
|
||||
'LT_PATH_NM' => 1,
|
||||
'LT_PROG_GCJ' => 1,
|
||||
'LT_PROG_GO' => 1,
|
||||
'LT_PROG_RC' => 1,
|
||||
'LT_SUPPORTED_TAG' => 1,
|
||||
'LT_SYS_DLOPEN_DEPLIBS' => 1,
|
||||
'LT_SYS_DLOPEN_SELF' => 1,
|
||||
'LT_SYS_DLSEARCH_PATH' => 1,
|
||||
'LT_SYS_MODULE_EXT' => 1,
|
||||
'LT_SYS_MODULE_PATH' => 1,
|
||||
'LT_SYS_SYMBOL_USCORE' => 1,
|
||||
'LT_WITH_LTDL' => 1,
|
||||
'PKG_CHECK_EXISTS' => 1,
|
||||
'PKG_CHECK_MODULES' => 1,
|
||||
'PKG_CHECK_MODULES_STATIC' => 1,
|
||||
'PKG_CHECK_VAR' => 1,
|
||||
'PKG_HAVE_DEFINE_WITH_MODULES' => 1,
|
||||
'PKG_HAVE_WITH_MODULES' => 1,
|
||||
'PKG_INSTALLDIR' => 1,
|
||||
'PKG_NOARCH_INSTALLDIR' => 1,
|
||||
'PKG_PROG_PKG_CONFIG' => 1,
|
||||
'PKG_WITH_MODULES' => 1,
|
||||
'_AC_AM_CONFIG_HEADER_HOOK' => 1,
|
||||
'_AC_PROG_LIBTOOL' => 1,
|
||||
'_AM_AUTOCONF_VERSION' => 1,
|
||||
'_AM_CONFIG_MACRO_DIRS' => 1,
|
||||
'_AM_DEPENDENCIES' => 1,
|
||||
'_AM_IF_OPTION' => 1,
|
||||
'_AM_MANGLE_OPTION' => 1,
|
||||
'_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
|
||||
'_AM_PROG_CC_C_O' => 1,
|
||||
'_AM_PROG_TAR' => 1,
|
||||
'_AM_SET_OPTION' => 1,
|
||||
'_AM_SET_OPTIONS' => 1,
|
||||
'_AM_SUBST_NOTMAKE' => 1,
|
||||
'_LTDL_SETUP' => 1,
|
||||
'_LT_AC_CHECK_DLFCN' => 1,
|
||||
'_LT_AC_FILE_LTDLL_C' => 1,
|
||||
'_LT_AC_LANG_CXX' => 1,
|
||||
'_LT_AC_LANG_CXX_CONFIG' => 1,
|
||||
'_LT_AC_LANG_C_CONFIG' => 1,
|
||||
'_LT_AC_LANG_F77' => 1,
|
||||
'_LT_AC_LANG_F77_CONFIG' => 1,
|
||||
'_LT_AC_LANG_GCJ' => 1,
|
||||
'_LT_AC_LANG_GCJ_CONFIG' => 1,
|
||||
'_LT_AC_LANG_RC_CONFIG' => 1,
|
||||
'_LT_AC_LOCK' => 1,
|
||||
'_LT_AC_PROG_CXXCPP' => 1,
|
||||
'_LT_AC_PROG_ECHO_BACKSLASH' => 1,
|
||||
'_LT_AC_SHELL_INIT' => 1,
|
||||
'_LT_AC_SYS_COMPILER' => 1,
|
||||
'_LT_AC_SYS_LIBPATH_AIX' => 1,
|
||||
'_LT_AC_TAGCONFIG' => 1,
|
||||
'_LT_AC_TAGVAR' => 1,
|
||||
'_LT_AC_TRY_DLOPEN_SELF' => 1,
|
||||
'_LT_CC_BASENAME' => 1,
|
||||
'_LT_COMPILER_BOILERPLATE' => 1,
|
||||
'_LT_COMPILER_OPTION' => 1,
|
||||
'_LT_DLL_DEF_P' => 1,
|
||||
'_LT_LIBOBJ' => 1,
|
||||
'_LT_LINKER_BOILERPLATE' => 1,
|
||||
'_LT_LINKER_OPTION' => 1,
|
||||
'_LT_PATH_TOOL_PREFIX' => 1,
|
||||
'_LT_PREPARE_SED_QUOTE_VARS' => 1,
|
||||
'_LT_PROG_CXX' => 1,
|
||||
'_LT_PROG_ECHO_BACKSLASH' => 1,
|
||||
'_LT_PROG_F77' => 1,
|
||||
'_LT_PROG_FC' => 1,
|
||||
'_LT_PROG_LTMAIN' => 1,
|
||||
'_LT_REQUIRED_DARWIN_CHECKS' => 1,
|
||||
'_LT_WITH_SYSROOT' => 1,
|
||||
'_PKG_SHORT_ERRORS_SUPPORTED' => 1,
|
||||
'_m4_warn' => 1,
|
||||
'include' => 1,
|
||||
'm4_include' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'm4_pattern_forbid' => 1
|
||||
}
|
||||
], 'Autom4te::Request' ),
|
||||
bless( [
|
||||
'1',
|
||||
1,
|
||||
[
|
||||
'/usr/share/autoconf'
|
||||
],
|
||||
[
|
||||
'/usr/share/autoconf/autoconf/autoconf.m4f',
|
||||
'aclocal.m4',
|
||||
'configure.ac'
|
||||
],
|
||||
{
|
||||
'AC_CANONICAL_BUILD' => 1,
|
||||
'AC_CANONICAL_HOST' => 1,
|
||||
'AC_CANONICAL_SYSTEM' => 1,
|
||||
'AC_CANONICAL_TARGET' => 1,
|
||||
'AC_CONFIG_AUX_DIR' => 1,
|
||||
'AC_CONFIG_FILES' => 1,
|
||||
'AC_CONFIG_HEADERS' => 1,
|
||||
'AC_CONFIG_LIBOBJ_DIR' => 1,
|
||||
'AC_CONFIG_LINKS' => 1,
|
||||
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
|
||||
'AC_CONFIG_SUBDIRS' => 1,
|
||||
'AC_DEFINE_TRACE_LITERAL' => 1,
|
||||
'AC_FC_FREEFORM' => 1,
|
||||
'AC_FC_PP_DEFINE' => 1,
|
||||
'AC_FC_PP_SRCEXT' => 1,
|
||||
'AC_FC_SRCEXT' => 1,
|
||||
'AC_INIT' => 1,
|
||||
'AC_LIBSOURCE' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_REQUIRE_AUX_FILE' => 1,
|
||||
'AC_SUBST' => 1,
|
||||
'AC_SUBST_TRACE' => 1,
|
||||
'AH_OUTPUT' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AM_ENABLE_MULTILIB' => 1,
|
||||
'AM_EXTRA_RECURSIVE_TARGETS' => 1,
|
||||
'AM_GNU_GETTEXT' => 1,
|
||||
'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
|
||||
'AM_INIT_AUTOMAKE' => 1,
|
||||
'AM_MAINTAINER_MODE' => 1,
|
||||
'AM_MAKEFILE_INCLUDE' => 1,
|
||||
'AM_NLS' => 1,
|
||||
'AM_PATH_GUILE' => 1,
|
||||
'AM_POT_TOOLS' => 1,
|
||||
'AM_PROG_AR' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'AM_PROG_CXX_C_O' => 1,
|
||||
'AM_PROG_F77_C_O' => 1,
|
||||
'AM_PROG_FC_C_O' => 1,
|
||||
'AM_PROG_LIBTOOL' => 1,
|
||||
'AM_PROG_MKDIR_P' => 1,
|
||||
'AM_PROG_MOC' => 1,
|
||||
'AM_SILENT_RULES' => 1,
|
||||
'AM_XGETTEXT_OPTION' => 1,
|
||||
'GTK_DOC_CHECK' => 1,
|
||||
'IT_PROG_INTLTOOL' => 1,
|
||||
'LT_CONFIG_LTDL_DIR' => 1,
|
||||
'LT_INIT' => 1,
|
||||
'LT_SUPPORTED_TAG' => 1,
|
||||
'_AM_COND_ELSE' => 1,
|
||||
'_AM_COND_ENDIF' => 1,
|
||||
'_AM_COND_IF' => 1,
|
||||
'_AM_MAKEFILE_INCLUDE' => 1,
|
||||
'_AM_SUBST_NOTMAKE' => 1,
|
||||
'_LT_AC_TAGCONFIG' => 1,
|
||||
'_m4_warn' => 1,
|
||||
'include' => 1,
|
||||
'm4_include' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'm4_pattern_forbid' => 1,
|
||||
'm4_sinclude' => 1,
|
||||
'sinclude' => 1
|
||||
}
|
||||
], 'Autom4te::Request' ),
|
||||
bless( [
|
||||
'2',
|
||||
1,
|
||||
[
|
||||
'/usr/share/autoconf'
|
||||
],
|
||||
[
|
||||
'/usr/share/autoconf/autoconf/autoconf.m4f',
|
||||
'/usr/share/aclocal-1.16/internal/ac-config-macro-dirs.m4',
|
||||
'/usr/share/aclocal/ltargz.m4',
|
||||
'/usr/share/aclocal/ltdl.m4',
|
||||
'/usr/share/aclocal/pkg.m4',
|
||||
'/usr/share/aclocal-1.16/amversion.m4',
|
||||
'/usr/share/aclocal-1.16/ar-lib.m4',
|
||||
'/usr/share/aclocal-1.16/auxdir.m4',
|
||||
'/usr/share/aclocal-1.16/cond.m4',
|
||||
'/usr/share/aclocal-1.16/depend.m4',
|
||||
'/usr/share/aclocal-1.16/depout.m4',
|
||||
'/usr/share/aclocal-1.16/init.m4',
|
||||
'/usr/share/aclocal-1.16/install-sh.m4',
|
||||
'/usr/share/aclocal-1.16/lead-dot.m4',
|
||||
'/usr/share/aclocal-1.16/make.m4',
|
||||
'/usr/share/aclocal-1.16/missing.m4',
|
||||
'/usr/share/aclocal-1.16/options.m4',
|
||||
'/usr/share/aclocal-1.16/prog-cc-c-o.m4',
|
||||
'/usr/share/aclocal-1.16/runlog.m4',
|
||||
'/usr/share/aclocal-1.16/sanity.m4',
|
||||
'/usr/share/aclocal-1.16/silent.m4',
|
||||
'/usr/share/aclocal-1.16/strip.m4',
|
||||
'/usr/share/aclocal-1.16/substnot.m4',
|
||||
'/usr/share/aclocal-1.16/tar.m4',
|
||||
'm4/libtool.m4',
|
||||
'm4/ltoptions.m4',
|
||||
'm4/ltsugar.m4',
|
||||
'm4/ltversion.m4',
|
||||
'm4/lt~obsolete.m4',
|
||||
'configure.ac'
|
||||
],
|
||||
{
|
||||
'AC_CHECK_LIBM' => 1,
|
||||
'AC_CONFIG_MACRO_DIR' => 1,
|
||||
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
|
||||
'AC_DEFUN' => 1,
|
||||
'AC_DEFUN_ONCE' => 1,
|
||||
'AC_DEPLIBS_CHECK_METHOD' => 1,
|
||||
'AC_DISABLE_FAST_INSTALL' => 1,
|
||||
'AC_DISABLE_SHARED' => 1,
|
||||
'AC_DISABLE_STATIC' => 1,
|
||||
'AC_ENABLE_FAST_INSTALL' => 1,
|
||||
'AC_ENABLE_SHARED' => 1,
|
||||
'AC_ENABLE_STATIC' => 1,
|
||||
'AC_LIBLTDL_CONVENIENCE' => 1,
|
||||
'AC_LIBLTDL_INSTALLABLE' => 1,
|
||||
'AC_LIBTOOL_COMPILER_OPTION' => 1,
|
||||
'AC_LIBTOOL_CONFIG' => 1,
|
||||
'AC_LIBTOOL_CXX' => 1,
|
||||
'AC_LIBTOOL_DLOPEN' => 1,
|
||||
'AC_LIBTOOL_DLOPEN_SELF' => 1,
|
||||
'AC_LIBTOOL_F77' => 1,
|
||||
'AC_LIBTOOL_FC' => 1,
|
||||
'AC_LIBTOOL_GCJ' => 1,
|
||||
'AC_LIBTOOL_LANG_CXX_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_C_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_F77_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_GCJ_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LANG_RC_CONFIG' => 1,
|
||||
'AC_LIBTOOL_LINKER_OPTION' => 1,
|
||||
'AC_LIBTOOL_OBJDIR' => 1,
|
||||
'AC_LIBTOOL_PICMODE' => 1,
|
||||
'AC_LIBTOOL_POSTDEP_PREDEP' => 1,
|
||||
'AC_LIBTOOL_PROG_CC_C_O' => 1,
|
||||
'AC_LIBTOOL_PROG_COMPILER_NO_RTTI' => 1,
|
||||
'AC_LIBTOOL_PROG_COMPILER_PIC' => 1,
|
||||
'AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH' => 1,
|
||||
'AC_LIBTOOL_PROG_LD_SHLIBS' => 1,
|
||||
'AC_LIBTOOL_RC' => 1,
|
||||
'AC_LIBTOOL_SETUP' => 1,
|
||||
'AC_LIBTOOL_SYS_DYNAMIC_LINKER' => 1,
|
||||
'AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE' => 1,
|
||||
'AC_LIBTOOL_SYS_HARD_LINK_LOCKS' => 1,
|
||||
'AC_LIBTOOL_SYS_LIB_STRIP' => 1,
|
||||
'AC_LIBTOOL_SYS_MAX_CMD_LEN' => 1,
|
||||
'AC_LIBTOOL_SYS_OLD_ARCHIVE' => 1,
|
||||
'AC_LIBTOOL_WIN32_DLL' => 1,
|
||||
'AC_LIB_LTDL' => 1,
|
||||
'AC_LTDL_DLLIB' => 1,
|
||||
'AC_LTDL_DLSYM_USCORE' => 1,
|
||||
'AC_LTDL_ENABLE_INSTALL' => 1,
|
||||
'AC_LTDL_OBJDIR' => 1,
|
||||
'AC_LTDL_PREOPEN' => 1,
|
||||
'AC_LTDL_SHLIBEXT' => 1,
|
||||
'AC_LTDL_SHLIBPATH' => 1,
|
||||
'AC_LTDL_SYMBOL_USCORE' => 1,
|
||||
'AC_LTDL_SYSSEARCHPATH' => 1,
|
||||
'AC_LTDL_SYS_DLOPEN_DEPLIBS' => 1,
|
||||
'AC_PATH_MAGIC' => 1,
|
||||
'AC_PATH_TOOL_PREFIX' => 1,
|
||||
'AC_PROG_EGREP' => 1,
|
||||
'AC_PROG_LD' => 1,
|
||||
'AC_PROG_LD_GNU' => 1,
|
||||
'AC_PROG_LD_RELOAD_FLAG' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_PROG_NM' => 1,
|
||||
'AC_WITH_LTDL' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AM_AUX_DIR_EXPAND' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AM_DEP_TRACK' => 1,
|
||||
'AM_DISABLE_SHARED' => 1,
|
||||
'AM_DISABLE_STATIC' => 1,
|
||||
'AM_ENABLE_SHARED' => 1,
|
||||
'AM_ENABLE_STATIC' => 1,
|
||||
'AM_INIT_AUTOMAKE' => 1,
|
||||
'AM_MAKE_INCLUDE' => 1,
|
||||
'AM_MISSING_HAS_RUN' => 1,
|
||||
'AM_MISSING_PROG' => 1,
|
||||
'AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
|
||||
'AM_PROG_AR' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'AM_PROG_INSTALL_SH' => 1,
|
||||
'AM_PROG_INSTALL_STRIP' => 1,
|
||||
'AM_PROG_LD' => 1,
|
||||
'AM_PROG_LIBTOOL' => 1,
|
||||
'AM_PROG_NM' => 1,
|
||||
'AM_RUN_LOG' => 1,
|
||||
'AM_SANITY_CHECK' => 1,
|
||||
'AM_SET_CURRENT_AUTOMAKE_VERSION' => 1,
|
||||
'AM_SET_DEPDIR' => 1,
|
||||
'AM_SET_LEADING_DOT' => 1,
|
||||
'AM_SILENT_RULES' => 1,
|
||||
'AM_SUBST_NOTMAKE' => 1,
|
||||
'AU_DEFUN' => 1,
|
||||
'LTDL_CONVENIENCE' => 1,
|
||||
'LTDL_INIT' => 1,
|
||||
'LTDL_INSTALLABLE' => 1,
|
||||
'LTOBSOLETE_VERSION' => 1,
|
||||
'LTOPTIONS_VERSION' => 1,
|
||||
'LTSUGAR_VERSION' => 1,
|
||||
'LTVERSION_VERSION' => 1,
|
||||
'LT_AC_PROG_EGREP' => 1,
|
||||
'LT_AC_PROG_GCJ' => 1,
|
||||
'LT_AC_PROG_RC' => 1,
|
||||
'LT_AC_PROG_SED' => 1,
|
||||
'LT_CMD_MAX_LEN' => 1,
|
||||
'LT_CONFIG_LTDL_DIR' => 1,
|
||||
'LT_FUNC_ARGZ' => 1,
|
||||
'LT_FUNC_DLSYM_USCORE' => 1,
|
||||
'LT_INIT' => 1,
|
||||
'LT_LANG' => 1,
|
||||
'LT_LIB_DLLOAD' => 1,
|
||||
'LT_LIB_M' => 1,
|
||||
'LT_OUTPUT' => 1,
|
||||
'LT_PATH_LD' => 1,
|
||||
'LT_PATH_NM' => 1,
|
||||
'LT_PROG_GCJ' => 1,
|
||||
'LT_PROG_GO' => 1,
|
||||
'LT_PROG_RC' => 1,
|
||||
'LT_SUPPORTED_TAG' => 1,
|
||||
'LT_SYS_DLOPEN_DEPLIBS' => 1,
|
||||
'LT_SYS_DLOPEN_SELF' => 1,
|
||||
'LT_SYS_DLSEARCH_PATH' => 1,
|
||||
'LT_SYS_MODULE_EXT' => 1,
|
||||
'LT_SYS_MODULE_PATH' => 1,
|
||||
'LT_SYS_SYMBOL_USCORE' => 1,
|
||||
'LT_WITH_LTDL' => 1,
|
||||
'PKG_CHECK_EXISTS' => 1,
|
||||
'PKG_CHECK_MODULES' => 1,
|
||||
'PKG_CHECK_MODULES_STATIC' => 1,
|
||||
'PKG_CHECK_VAR' => 1,
|
||||
'PKG_HAVE_DEFINE_WITH_MODULES' => 1,
|
||||
'PKG_HAVE_WITH_MODULES' => 1,
|
||||
'PKG_INSTALLDIR' => 1,
|
||||
'PKG_NOARCH_INSTALLDIR' => 1,
|
||||
'PKG_PROG_PKG_CONFIG' => 1,
|
||||
'PKG_WITH_MODULES' => 1,
|
||||
'_AC_AM_CONFIG_HEADER_HOOK' => 1,
|
||||
'_AC_PROG_LIBTOOL' => 1,
|
||||
'_AM_AUTOCONF_VERSION' => 1,
|
||||
'_AM_CONFIG_MACRO_DIRS' => 1,
|
||||
'_AM_DEPENDENCIES' => 1,
|
||||
'_AM_IF_OPTION' => 1,
|
||||
'_AM_MANGLE_OPTION' => 1,
|
||||
'_AM_OUTPUT_DEPENDENCY_COMMANDS' => 1,
|
||||
'_AM_PROG_CC_C_O' => 1,
|
||||
'_AM_PROG_TAR' => 1,
|
||||
'_AM_SET_OPTION' => 1,
|
||||
'_AM_SET_OPTIONS' => 1,
|
||||
'_AM_SUBST_NOTMAKE' => 1,
|
||||
'_LTDL_SETUP' => 1,
|
||||
'_LT_AC_CHECK_DLFCN' => 1,
|
||||
'_LT_AC_FILE_LTDLL_C' => 1,
|
||||
'_LT_AC_LANG_CXX' => 1,
|
||||
'_LT_AC_LANG_CXX_CONFIG' => 1,
|
||||
'_LT_AC_LANG_C_CONFIG' => 1,
|
||||
'_LT_AC_LANG_F77' => 1,
|
||||
'_LT_AC_LANG_F77_CONFIG' => 1,
|
||||
'_LT_AC_LANG_GCJ' => 1,
|
||||
'_LT_AC_LANG_GCJ_CONFIG' => 1,
|
||||
'_LT_AC_LANG_RC_CONFIG' => 1,
|
||||
'_LT_AC_LOCK' => 1,
|
||||
'_LT_AC_PROG_CXXCPP' => 1,
|
||||
'_LT_AC_PROG_ECHO_BACKSLASH' => 1,
|
||||
'_LT_AC_SHELL_INIT' => 1,
|
||||
'_LT_AC_SYS_COMPILER' => 1,
|
||||
'_LT_AC_SYS_LIBPATH_AIX' => 1,
|
||||
'_LT_AC_TAGCONFIG' => 1,
|
||||
'_LT_AC_TAGVAR' => 1,
|
||||
'_LT_AC_TRY_DLOPEN_SELF' => 1,
|
||||
'_LT_CC_BASENAME' => 1,
|
||||
'_LT_COMPILER_BOILERPLATE' => 1,
|
||||
'_LT_COMPILER_OPTION' => 1,
|
||||
'_LT_DLL_DEF_P' => 1,
|
||||
'_LT_LIBOBJ' => 1,
|
||||
'_LT_LINKER_BOILERPLATE' => 1,
|
||||
'_LT_LINKER_OPTION' => 1,
|
||||
'_LT_PATH_TOOL_PREFIX' => 1,
|
||||
'_LT_PREPARE_SED_QUOTE_VARS' => 1,
|
||||
'_LT_PROG_CXX' => 1,
|
||||
'_LT_PROG_ECHO_BACKSLASH' => 1,
|
||||
'_LT_PROG_F77' => 1,
|
||||
'_LT_PROG_FC' => 1,
|
||||
'_LT_PROG_LTMAIN' => 1,
|
||||
'_LT_REQUIRED_DARWIN_CHECKS' => 1,
|
||||
'_LT_WITH_SYSROOT' => 1,
|
||||
'_PKG_SHORT_ERRORS_SUPPORTED' => 1,
|
||||
'_m4_warn' => 1,
|
||||
'include' => 1,
|
||||
'm4_include' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'm4_pattern_forbid' => 1
|
||||
}
|
||||
], 'Autom4te::Request' ),
|
||||
bless( [
|
||||
'3',
|
||||
1,
|
||||
[
|
||||
'/usr/share/autoconf'
|
||||
],
|
||||
[
|
||||
'/usr/share/autoconf/autoconf/autoconf.m4f',
|
||||
'aclocal.m4',
|
||||
'/usr/share/autoconf/autoconf/trailer.m4',
|
||||
'configure.ac'
|
||||
],
|
||||
{
|
||||
'AC_CANONICAL_BUILD' => 1,
|
||||
'AC_CANONICAL_HOST' => 1,
|
||||
'AC_CANONICAL_SYSTEM' => 1,
|
||||
'AC_CANONICAL_TARGET' => 1,
|
||||
'AC_CONFIG_AUX_DIR' => 1,
|
||||
'AC_CONFIG_FILES' => 1,
|
||||
'AC_CONFIG_HEADERS' => 1,
|
||||
'AC_CONFIG_LIBOBJ_DIR' => 1,
|
||||
'AC_CONFIG_LINKS' => 1,
|
||||
'AC_CONFIG_MACRO_DIR_TRACE' => 1,
|
||||
'AC_CONFIG_SUBDIRS' => 1,
|
||||
'AC_DEFINE_TRACE_LITERAL' => 1,
|
||||
'AC_FC_FREEFORM' => 1,
|
||||
'AC_FC_PP_DEFINE' => 1,
|
||||
'AC_FC_PP_SRCEXT' => 1,
|
||||
'AC_FC_SRCEXT' => 1,
|
||||
'AC_INIT' => 1,
|
||||
'AC_LIBSOURCE' => 1,
|
||||
'AC_PROG_LIBTOOL' => 1,
|
||||
'AC_REQUIRE_AUX_FILE' => 1,
|
||||
'AC_SUBST' => 1,
|
||||
'AC_SUBST_TRACE' => 1,
|
||||
'AH_OUTPUT' => 1,
|
||||
'AM_AUTOMAKE_VERSION' => 1,
|
||||
'AM_CONDITIONAL' => 1,
|
||||
'AM_ENABLE_MULTILIB' => 1,
|
||||
'AM_EXTRA_RECURSIVE_TARGETS' => 1,
|
||||
'AM_GNU_GETTEXT' => 1,
|
||||
'AM_GNU_GETTEXT_INTL_SUBDIR' => 1,
|
||||
'AM_INIT_AUTOMAKE' => 1,
|
||||
'AM_MAINTAINER_MODE' => 1,
|
||||
'AM_MAKEFILE_INCLUDE' => 1,
|
||||
'AM_NLS' => 1,
|
||||
'AM_PATH_GUILE' => 1,
|
||||
'AM_POT_TOOLS' => 1,
|
||||
'AM_PROG_AR' => 1,
|
||||
'AM_PROG_CC_C_O' => 1,
|
||||
'AM_PROG_CXX_C_O' => 1,
|
||||
'AM_PROG_F77_C_O' => 1,
|
||||
'AM_PROG_FC_C_O' => 1,
|
||||
'AM_PROG_LIBTOOL' => 1,
|
||||
'AM_PROG_MKDIR_P' => 1,
|
||||
'AM_PROG_MOC' => 1,
|
||||
'AM_SILENT_RULES' => 1,
|
||||
'AM_XGETTEXT_OPTION' => 1,
|
||||
'GTK_DOC_CHECK' => 1,
|
||||
'IT_PROG_INTLTOOL' => 1,
|
||||
'LT_CONFIG_LTDL_DIR' => 1,
|
||||
'LT_INIT' => 1,
|
||||
'LT_SUPPORTED_TAG' => 1,
|
||||
'_AM_COND_ELSE' => 1,
|
||||
'_AM_COND_ENDIF' => 1,
|
||||
'_AM_COND_IF' => 1,
|
||||
'_AM_MAKEFILE_INCLUDE' => 1,
|
||||
'_AM_SUBST_NOTMAKE' => 1,
|
||||
'_LT_AC_TAGCONFIG' => 1,
|
||||
'_m4_warn' => 1,
|
||||
'include' => 1,
|
||||
'm4_include' => 1,
|
||||
'm4_pattern_allow' => 1,
|
||||
'm4_pattern_forbid' => 1,
|
||||
'm4_sinclude' => 1,
|
||||
'sinclude' => 1
|
||||
}
|
||||
], 'Autom4te::Request' )
|
||||
);
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,595 @@
|
||||
m4trace:aclocal.m4:1103: -1- AC_SUBST([am__quote])
|
||||
m4trace:aclocal.m4:1103: -1- AC_SUBST_TRACE([am__quote])
|
||||
m4trace:aclocal.m4:1103: -1- m4_pattern_allow([^am__quote$])
|
||||
m4trace:aclocal.m4:1555: -1- m4_include([m4/libtool.m4])
|
||||
m4trace:aclocal.m4:1556: -1- m4_include([m4/ltoptions.m4])
|
||||
m4trace:aclocal.m4:1557: -1- m4_include([m4/ltsugar.m4])
|
||||
m4trace:aclocal.m4:1558: -1- m4_include([m4/ltversion.m4])
|
||||
m4trace:aclocal.m4:1559: -1- m4_include([m4/lt~obsolete.m4])
|
||||
m4trace:configure.ac:2: -1- AC_INIT([emacs-zmq], [1.0.0], [nathanielnicandro@gmail.com])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?A[CHUM]_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([_AC_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section 'AC_LIBOBJ vs LIBOBJS'])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^AS_FLAGS$])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?m4_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^dnl$])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?AS_])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([SHELL])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([SHELL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^SHELL$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PATH_SEPARATOR])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PATH_SEPARATOR$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_NAME$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_VERSION$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_STRING$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_URL$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([exec_prefix], [NONE])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([exec_prefix])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^exec_prefix$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([prefix], [NONE])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([prefix])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^prefix$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([program_transform_name], [s,x,x,])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([program_transform_name])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^program_transform_name$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([bindir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^bindir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sbindir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sbindir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([libexecdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^libexecdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([datarootdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^datarootdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([datadir], ['${datarootdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([datadir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^datadir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sysconfdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sysconfdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sharedstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sharedstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([localstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^localstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([runstatedir], ['${localstatedir}/run'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([runstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^runstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([includedir], ['${prefix}/include'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([includedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^includedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([oldincludedir], ['/usr/include'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([oldincludedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^oldincludedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
|
||||
['${datarootdir}/doc/${PACKAGE_TARNAME}'],
|
||||
['${datarootdir}/doc/${PACKAGE}'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([docdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^docdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([infodir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^infodir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([htmldir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([htmldir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^htmldir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([dvidir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([dvidir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^dvidir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([pdfdir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([pdfdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^pdfdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([psdir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([psdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^psdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([libdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^libdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([localedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^localedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([mandir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^mandir$])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_NAME$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
|
||||
@%:@undef PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
|
||||
@%:@undef PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_VERSION$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
|
||||
@%:@undef PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_STRING$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
|
||||
@%:@undef PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
|
||||
@%:@undef PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_URL$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
|
||||
@%:@undef PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([DEFS])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([DEFS])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^DEFS$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_C])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_C])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_C$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_N])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_N])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_N$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_T])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_T])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_T$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([LIBS])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([LIBS])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^LIBS$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([build_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([build_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^build_alias$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([host_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([host_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^host_alias$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([target_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([target_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^target_alias$])
|
||||
m4trace:configure.ac:5: -1- AC_CONFIG_MACRO_DIR_TRACE([m4])
|
||||
m4trace:configure.ac:6: -1- AM_INIT_AUTOMAKE([-Wall -Wno-override foreign])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
|
||||
m4trace:configure.ac:6: -1- AM_AUTOMAKE_VERSION([1.16.5])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([install-sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_SCRIPT])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_DATA])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_DATA])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_DATA$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__isrc], [' -I$(srcdir)'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__isrc])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__isrc$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([am__isrc])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CYGPATH_W])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CYGPATH_W])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CYGPATH_W$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([PACKAGE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^PACKAGE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([VERSION])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^VERSION$])
|
||||
m4trace:configure.ac:6: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^PACKAGE$])
|
||||
m4trace:configure.ac:6: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
|
||||
@%:@undef PACKAGE])
|
||||
m4trace:configure.ac:6: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^VERSION$])
|
||||
m4trace:configure.ac:6: -1- AH_OUTPUT([VERSION], [/* Version number of package */
|
||||
@%:@undef VERSION])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([missing])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([ACLOCAL])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([ACLOCAL])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^ACLOCAL$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOCONF])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOCONF])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOCONF$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOMAKE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOMAKE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOMAKE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOHEADER])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOHEADER])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOHEADER$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([MAKEINFO])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([MAKEINFO])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^MAKEINFO$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([install_sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([install_sh])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^install_sh$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([STRIP])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([STRIP])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^STRIP$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([install-sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([MKDIR_P])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([MKDIR_P])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^MKDIR_P$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([mkdir_p])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^mkdir_p$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AWK])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AWK])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AWK$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([SET_MAKE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([SET_MAKE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^SET_MAKE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__leading_dot])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__leading_dot])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__leading_dot$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AMTAR], ['$${TAR-tar}'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AMTAR])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AMTAR$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__tar])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__tar])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__tar$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__untar])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__untar])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__untar$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CTAGS])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CTAGS])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CTAGS$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([ETAGS])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([ETAGS])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^ETAGS$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CSCOPE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CSCOPE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CSCOPE$])
|
||||
m4trace:configure.ac:6: -1- AM_SILENT_RULES
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_V])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_V$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_DEFAULT_V$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_DEFAULT_VERBOSITY])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_DEFAULT_VERBOSITY])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_BACKSLASH])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_BACKSLASH])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_BACKSLASH$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([LDFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([LDFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^LDFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([LIBS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([LIBS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^LIBS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CPPFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CPPFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CPPFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([ac_ct_CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([ac_ct_CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^ac_ct_CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([EXEEXT])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^EXEEXT$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([OBJEXT])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^OBJEXT$])
|
||||
m4trace:configure.ac:7: -1- AC_REQUIRE_AUX_FILE([compile])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([DEPDIR])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^DEPDIR$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__include])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__include])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__include$])
|
||||
m4trace:configure.ac:7: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEP_TRUE$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEP_FALSE$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__nodep])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__nodep])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__nodep$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__nodep])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CCDEPMODE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CCDEPMODE$])
|
||||
m4trace:configure.ac:7: -1- AM_CONDITIONAL([am__fastdepCC], [
|
||||
test "x$enable_dependency_tracking" != xno \
|
||||
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:8: -1- AM_PROG_AR
|
||||
m4trace:configure.ac:8: -1- AC_REQUIRE_AUX_FILE([ar-lib])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([ac_ct_AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([ac_ct_AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^ac_ct_AR$])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:9: -1- AC_CANONICAL_HOST
|
||||
m4trace:configure.ac:9: -1- AC_CANONICAL_BUILD
|
||||
m4trace:configure.ac:9: -1- AC_REQUIRE_AUX_FILE([config.sub])
|
||||
m4trace:configure.ac:9: -1- AC_REQUIRE_AUX_FILE([config.guess])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build], [$ac_cv_build])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_cpu], [$[1]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_cpu])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_cpu$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_vendor], [$[2]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_vendor])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_vendor$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_os])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_os])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_os$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host], [$ac_cv_host])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_cpu], [$[1]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_cpu])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_cpu$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_vendor], [$[2]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_vendor])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_vendor$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_os])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_os])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_os$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG_PATH])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG_LIBDIR])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([ZMQ_CFLAGS])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([ZMQ_CFLAGS])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_CFLAGS$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([ZMQ_LIBS])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([ZMQ_LIBS])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_LIBS$])
|
||||
m4trace:configure.ac:11: -1- AC_DEFINE_TRACE_LITERAL([ZMQ_BUILD_DRAFT_API])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_BUILD_DRAFT_API$])
|
||||
m4trace:configure.ac:28: -1- AC_CONFIG_SUBDIRS([libzmq])
|
||||
m4trace:configure.ac:28: -1- AC_SUBST([subdirs], ["$subdirs libzmq"])
|
||||
m4trace:configure.ac:28: -1- AC_SUBST_TRACE([subdirs])
|
||||
m4trace:configure.ac:28: -1- m4_pattern_allow([^subdirs$])
|
||||
m4trace:configure.ac:71: -1- AM_CONDITIONAL([WINDOWS], [test "x$ON_WINDOWS" != x])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST_TRACE([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- m4_pattern_allow([^WINDOWS_TRUE$])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST_TRACE([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:71: -1- m4_pattern_allow([^WINDOWS_FALSE$])
|
||||
m4trace:configure.ac:71: -1- _AM_SUBST_NOTMAKE([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- _AM_SUBST_NOTMAKE([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:72: -1- AM_CONDITIONAL([ZMQ_BUILD_LOCALLY], [test "x$ZMQ_BUILD_LOCALLY" != x])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST_TRACE([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- m4_pattern_allow([^ZMQ_BUILD_LOCALLY_TRUE$])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST_TRACE([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:72: -1- m4_pattern_allow([^ZMQ_BUILD_LOCALLY_FALSE$])
|
||||
m4trace:configure.ac:72: -1- _AM_SUBST_NOTMAKE([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- _AM_SUBST_NOTMAKE([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:78: -1- AC_SUBST([MAYBE_LIBZMQ])
|
||||
m4trace:configure.ac:78: -1- AC_SUBST_TRACE([MAYBE_LIBZMQ])
|
||||
m4trace:configure.ac:78: -1- m4_pattern_allow([^MAYBE_LIBZMQ$])
|
||||
m4trace:configure.ac:81: -1- AC_SUBST([MODULE_EXT])
|
||||
m4trace:configure.ac:81: -1- AC_SUBST_TRACE([MODULE_EXT])
|
||||
m4trace:configure.ac:81: -1- m4_pattern_allow([^MODULE_EXT$])
|
||||
m4trace:configure.ac:83: -1- LT_INIT([win32-dll shared disable-static])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
|
||||
m4trace:configure.ac:83: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([AS])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([AS])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^AS$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LIBTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LIBTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LIBTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([SED])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([SED])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^SED$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([GREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([GREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^GREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([EGREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([EGREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^EGREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([FGREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([FGREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^FGREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([GREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([GREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^GREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LD])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LD])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LD$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([ac_ct_DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ac_ct_DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([NM])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([NM])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^NM$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LN_S], [$as_ln_s])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LN_S])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LN_S$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([FILECMD])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([FILECMD])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^FILECMD$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([ac_ct_AR])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ac_ct_AR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^ac_ct_AR$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([STRIP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([STRIP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^STRIP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([RANLIB])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([RANLIB])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^RANLIB$])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LT_OBJDIR$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([LT_OBJDIR], [/* Define to the sub-directory where libtool stores uninstalled libraries. */
|
||||
@%:@undef LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- LT_SUPPORTED_TAG([CC])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([MANIFEST_TOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([MANIFEST_TOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^MANIFEST_TOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DSYMUTIL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DSYMUTIL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DSYMUTIL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([NMEDIT])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([NMEDIT])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^NMEDIT$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LIPO])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LIPO])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LIPO$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OTOOL64])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OTOOL64])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OTOOL64$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
@%:@undef HAVE_DLFCN_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */
|
||||
@%:@undef HAVE_STDIO_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
@%:@undef HAVE_STDLIB_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
|
||||
@%:@undef HAVE_STRING_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
@%:@undef HAVE_INTTYPES_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
|
||||
@%:@undef HAVE_STDINT_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
|
||||
@%:@undef HAVE_STRINGS_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
@%:@undef HAVE_SYS_STAT_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
@%:@undef HAVE_SYS_TYPES_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
|
||||
@%:@undef HAVE_UNISTD_H])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^STDC_HEADERS$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if all of the C89 standard headers exist (not just the ones
|
||||
required in a freestanding environment). This macro is provided for
|
||||
backward compatibility; new code need not use it. */
|
||||
@%:@undef STDC_HEADERS])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
|
||||
m4trace:configure.ac:84: -1- AC_CONFIG_FILES([Makefile])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^LIB@&t@OBJS$])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([LTLIBOBJS])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^LTLIBOBJS$])
|
||||
m4trace:configure.ac:85: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
|
||||
m4trace:configure.ac:85: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_build_prefix])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_top_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_top_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([INSTALL])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([MKDIR_P])
|
||||
m4trace:configure.ac:85: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,595 @@
|
||||
m4trace:aclocal.m4:1103: -1- AC_SUBST([am__quote])
|
||||
m4trace:aclocal.m4:1103: -1- AC_SUBST_TRACE([am__quote])
|
||||
m4trace:aclocal.m4:1103: -1- m4_pattern_allow([^am__quote$])
|
||||
m4trace:aclocal.m4:1555: -1- m4_include([m4/libtool.m4])
|
||||
m4trace:aclocal.m4:1556: -1- m4_include([m4/ltoptions.m4])
|
||||
m4trace:aclocal.m4:1557: -1- m4_include([m4/ltsugar.m4])
|
||||
m4trace:aclocal.m4:1558: -1- m4_include([m4/ltversion.m4])
|
||||
m4trace:aclocal.m4:1559: -1- m4_include([m4/lt~obsolete.m4])
|
||||
m4trace:configure.ac:2: -1- AC_INIT([emacs-zmq], [1.0.0], [nathanielnicandro@gmail.com])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?A[CHUM]_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([_AC_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^LIBOBJS$], [do not use LIBOBJS directly, use AC_LIBOBJ (see section 'AC_LIBOBJ vs LIBOBJS'])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^AS_FLAGS$])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?m4_])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^dnl$])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_forbid([^_?AS_])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([SHELL])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([SHELL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^SHELL$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PATH_SEPARATOR])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PATH_SEPARATOR])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PATH_SEPARATOR$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_NAME], [m4_ifdef([AC_PACKAGE_NAME], ['AC_PACKAGE_NAME'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_NAME$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_TARNAME], [m4_ifdef([AC_PACKAGE_TARNAME], ['AC_PACKAGE_TARNAME'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_VERSION], [m4_ifdef([AC_PACKAGE_VERSION], ['AC_PACKAGE_VERSION'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_VERSION$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_STRING], [m4_ifdef([AC_PACKAGE_STRING], ['AC_PACKAGE_STRING'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_STRING$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_BUGREPORT], [m4_ifdef([AC_PACKAGE_BUGREPORT], ['AC_PACKAGE_BUGREPORT'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([PACKAGE_URL], [m4_ifdef([AC_PACKAGE_URL], ['AC_PACKAGE_URL'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_URL$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([exec_prefix], [NONE])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([exec_prefix])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^exec_prefix$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([prefix], [NONE])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([prefix])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^prefix$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([program_transform_name], [s,x,x,])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([program_transform_name])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^program_transform_name$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([bindir], ['${exec_prefix}/bin'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([bindir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^bindir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sbindir], ['${exec_prefix}/sbin'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sbindir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sbindir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([libexecdir], ['${exec_prefix}/libexec'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([libexecdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^libexecdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([datarootdir], ['${prefix}/share'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([datarootdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^datarootdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([datadir], ['${datarootdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([datadir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^datadir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sysconfdir], ['${prefix}/etc'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sysconfdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sysconfdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([sharedstatedir], ['${prefix}/com'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([sharedstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^sharedstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([localstatedir], ['${prefix}/var'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([localstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^localstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([runstatedir], ['${localstatedir}/run'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([runstatedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^runstatedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([includedir], ['${prefix}/include'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([includedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^includedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([oldincludedir], ['/usr/include'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([oldincludedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^oldincludedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([docdir], [m4_ifset([AC_PACKAGE_TARNAME],
|
||||
['${datarootdir}/doc/${PACKAGE_TARNAME}'],
|
||||
['${datarootdir}/doc/${PACKAGE}'])])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([docdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^docdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([infodir], ['${datarootdir}/info'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([infodir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^infodir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([htmldir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([htmldir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^htmldir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([dvidir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([dvidir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^dvidir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([pdfdir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([pdfdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^pdfdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([psdir], ['${docdir}'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([psdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^psdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([libdir], ['${exec_prefix}/lib'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([libdir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^libdir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([localedir], ['${datarootdir}/locale'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([localedir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^localedir$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([mandir], ['${datarootdir}/man'])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([mandir])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^mandir$])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_NAME$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_NAME], [/* Define to the full name of this package. */
|
||||
@%:@undef PACKAGE_NAME])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_TARNAME], [/* Define to the one symbol short name of this package. */
|
||||
@%:@undef PACKAGE_TARNAME])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_VERSION$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_VERSION], [/* Define to the version of this package. */
|
||||
@%:@undef PACKAGE_VERSION])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_STRING$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_STRING], [/* Define to the full name and version of this package. */
|
||||
@%:@undef PACKAGE_STRING])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_BUGREPORT], [/* Define to the address where bug reports for this package should be sent. */
|
||||
@%:@undef PACKAGE_BUGREPORT])
|
||||
m4trace:configure.ac:2: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^PACKAGE_URL$])
|
||||
m4trace:configure.ac:2: -1- AH_OUTPUT([PACKAGE_URL], [/* Define to the home page for this package. */
|
||||
@%:@undef PACKAGE_URL])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([DEFS])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([DEFS])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^DEFS$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_C])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_C])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_C$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_N])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_N])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_N$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([ECHO_T])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([ECHO_T])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^ECHO_T$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([LIBS])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([LIBS])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^LIBS$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([build_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([build_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^build_alias$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([host_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([host_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^host_alias$])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST([target_alias])
|
||||
m4trace:configure.ac:2: -1- AC_SUBST_TRACE([target_alias])
|
||||
m4trace:configure.ac:2: -1- m4_pattern_allow([^target_alias$])
|
||||
m4trace:configure.ac:5: -1- AC_CONFIG_MACRO_DIR_TRACE([m4])
|
||||
m4trace:configure.ac:6: -1- AM_INIT_AUTOMAKE([-Wall -Wno-override foreign])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
|
||||
m4trace:configure.ac:6: -1- AM_AUTOMAKE_VERSION([1.16.5])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([install-sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_SCRIPT])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_SCRIPT])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_DATA])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_DATA])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_DATA$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__isrc], [' -I$(srcdir)'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__isrc])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__isrc$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([am__isrc])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CYGPATH_W])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CYGPATH_W])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CYGPATH_W$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([PACKAGE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^PACKAGE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([VERSION])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^VERSION$])
|
||||
m4trace:configure.ac:6: -1- AC_DEFINE_TRACE_LITERAL([PACKAGE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^PACKAGE$])
|
||||
m4trace:configure.ac:6: -1- AH_OUTPUT([PACKAGE], [/* Name of package */
|
||||
@%:@undef PACKAGE])
|
||||
m4trace:configure.ac:6: -1- AC_DEFINE_TRACE_LITERAL([VERSION])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^VERSION$])
|
||||
m4trace:configure.ac:6: -1- AH_OUTPUT([VERSION], [/* Version number of package */
|
||||
@%:@undef VERSION])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([missing])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([ACLOCAL])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([ACLOCAL])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^ACLOCAL$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOCONF])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOCONF])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOCONF$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOMAKE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOMAKE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOMAKE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AUTOHEADER])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AUTOHEADER])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AUTOHEADER$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([MAKEINFO])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([MAKEINFO])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^MAKEINFO$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([install_sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([install_sh])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^install_sh$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([STRIP])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([STRIP])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^STRIP$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([INSTALL_STRIP_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([INSTALL_STRIP_PROGRAM])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_STRIP_PROGRAM$])
|
||||
m4trace:configure.ac:6: -1- AC_REQUIRE_AUX_FILE([install-sh])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([MKDIR_P])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([MKDIR_P])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^MKDIR_P$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([mkdir_p])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^mkdir_p$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AWK])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AWK])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AWK$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([SET_MAKE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([SET_MAKE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^SET_MAKE$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__leading_dot])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__leading_dot])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__leading_dot$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AMTAR], ['$${TAR-tar}'])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AMTAR])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AMTAR$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__tar])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__tar])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__tar$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([am__untar])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([am__untar])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^am__untar$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CTAGS])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CTAGS])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CTAGS$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([ETAGS])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([ETAGS])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^ETAGS$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([CSCOPE])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([CSCOPE])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^CSCOPE$])
|
||||
m4trace:configure.ac:6: -1- AM_SILENT_RULES
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_V])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_V$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_DEFAULT_V$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_DEFAULT_V])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_DEFAULT_VERBOSITY])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_DEFAULT_VERBOSITY])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_DEFAULT_VERBOSITY$])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST([AM_BACKSLASH])
|
||||
m4trace:configure.ac:6: -1- AC_SUBST_TRACE([AM_BACKSLASH])
|
||||
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_BACKSLASH$])
|
||||
m4trace:configure.ac:6: -1- _AM_SUBST_NOTMAKE([AM_BACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([LDFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([LDFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^LDFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([LIBS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([LIBS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^LIBS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CPPFLAGS])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CPPFLAGS])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CPPFLAGS$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([ac_ct_CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([ac_ct_CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^ac_ct_CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CC])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CC])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CC$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([EXEEXT], [$ac_cv_exeext])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([EXEEXT])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^EXEEXT$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([OBJEXT], [$ac_cv_objext])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([OBJEXT])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^OBJEXT$])
|
||||
m4trace:configure.ac:7: -1- AC_REQUIRE_AUX_FILE([compile])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([DEPDIR])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^DEPDIR$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__include])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__include])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__include$])
|
||||
m4trace:configure.ac:7: -1- AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEP_TRUE$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEP_FALSE$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEP_TRUE])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEP_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^AMDEPBACKSLASH$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([AMDEPBACKSLASH])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__nodep])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__nodep])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__nodep$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__nodep])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([CCDEPMODE], [depmode=$am_cv_CC_dependencies_compiler_type])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([CCDEPMODE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^CCDEPMODE$])
|
||||
m4trace:configure.ac:7: -1- AM_CONDITIONAL([am__fastdepCC], [
|
||||
test "x$enable_dependency_tracking" != xno \
|
||||
&& test "$am_cv_CC_dependencies_compiler_type" = gcc3])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__fastdepCC_TRUE$])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:7: -1- AC_SUBST_TRACE([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:7: -1- m4_pattern_allow([^am__fastdepCC_FALSE$])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_TRUE])
|
||||
m4trace:configure.ac:7: -1- _AM_SUBST_NOTMAKE([am__fastdepCC_FALSE])
|
||||
m4trace:configure.ac:8: -1- AM_PROG_AR
|
||||
m4trace:configure.ac:8: -1- AC_REQUIRE_AUX_FILE([ar-lib])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([ac_ct_AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([ac_ct_AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^ac_ct_AR$])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:8: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:8: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:9: -1- AC_CANONICAL_HOST
|
||||
m4trace:configure.ac:9: -1- AC_CANONICAL_BUILD
|
||||
m4trace:configure.ac:9: -1- AC_REQUIRE_AUX_FILE([config.sub])
|
||||
m4trace:configure.ac:9: -1- AC_REQUIRE_AUX_FILE([config.guess])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build], [$ac_cv_build])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_cpu], [$[1]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_cpu])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_cpu$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_vendor], [$[2]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_vendor])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_vendor$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([build_os])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([build_os])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^build_os$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host], [$ac_cv_host])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_cpu], [$[1]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_cpu])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_cpu$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_vendor], [$[2]])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_vendor])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_vendor$])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST([host_os])
|
||||
m4trace:configure.ac:9: -1- AC_SUBST_TRACE([host_os])
|
||||
m4trace:configure.ac:9: -1- m4_pattern_allow([^host_os$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG_PATH])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG_PATH])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG_LIBDIR])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG_LIBDIR])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([PKG_CONFIG])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^PKG_CONFIG$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([ZMQ_CFLAGS])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([ZMQ_CFLAGS])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_CFLAGS$])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST([ZMQ_LIBS])
|
||||
m4trace:configure.ac:11: -1- AC_SUBST_TRACE([ZMQ_LIBS])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_LIBS$])
|
||||
m4trace:configure.ac:11: -1- AC_DEFINE_TRACE_LITERAL([ZMQ_BUILD_DRAFT_API])
|
||||
m4trace:configure.ac:11: -1- m4_pattern_allow([^ZMQ_BUILD_DRAFT_API$])
|
||||
m4trace:configure.ac:28: -1- AC_CONFIG_SUBDIRS([libzmq])
|
||||
m4trace:configure.ac:28: -1- AC_SUBST([subdirs], ["$subdirs libzmq"])
|
||||
m4trace:configure.ac:28: -1- AC_SUBST_TRACE([subdirs])
|
||||
m4trace:configure.ac:28: -1- m4_pattern_allow([^subdirs$])
|
||||
m4trace:configure.ac:71: -1- AM_CONDITIONAL([WINDOWS], [test "x$ON_WINDOWS" != x])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST_TRACE([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- m4_pattern_allow([^WINDOWS_TRUE$])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:71: -1- AC_SUBST_TRACE([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:71: -1- m4_pattern_allow([^WINDOWS_FALSE$])
|
||||
m4trace:configure.ac:71: -1- _AM_SUBST_NOTMAKE([WINDOWS_TRUE])
|
||||
m4trace:configure.ac:71: -1- _AM_SUBST_NOTMAKE([WINDOWS_FALSE])
|
||||
m4trace:configure.ac:72: -1- AM_CONDITIONAL([ZMQ_BUILD_LOCALLY], [test "x$ZMQ_BUILD_LOCALLY" != x])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST_TRACE([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- m4_pattern_allow([^ZMQ_BUILD_LOCALLY_TRUE$])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:72: -1- AC_SUBST_TRACE([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:72: -1- m4_pattern_allow([^ZMQ_BUILD_LOCALLY_FALSE$])
|
||||
m4trace:configure.ac:72: -1- _AM_SUBST_NOTMAKE([ZMQ_BUILD_LOCALLY_TRUE])
|
||||
m4trace:configure.ac:72: -1- _AM_SUBST_NOTMAKE([ZMQ_BUILD_LOCALLY_FALSE])
|
||||
m4trace:configure.ac:78: -1- AC_SUBST([MAYBE_LIBZMQ])
|
||||
m4trace:configure.ac:78: -1- AC_SUBST_TRACE([MAYBE_LIBZMQ])
|
||||
m4trace:configure.ac:78: -1- m4_pattern_allow([^MAYBE_LIBZMQ$])
|
||||
m4trace:configure.ac:81: -1- AC_SUBST([MODULE_EXT])
|
||||
m4trace:configure.ac:81: -1- AC_SUBST_TRACE([MODULE_EXT])
|
||||
m4trace:configure.ac:81: -1- m4_pattern_allow([^MODULE_EXT$])
|
||||
m4trace:configure.ac:83: -1- LT_INIT([win32-dll shared disable-static])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_forbid([^_?LT_[A-Z_]+$])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])
|
||||
m4trace:configure.ac:83: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([AS])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([AS])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^AS$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LIBTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LIBTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LIBTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([SED])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([SED])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^SED$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([GREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([GREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^GREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([EGREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([EGREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^EGREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([FGREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([FGREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^FGREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([GREP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([GREP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^GREP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LD])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LD])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LD$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([ac_ct_DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ac_ct_DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^ac_ct_DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DUMPBIN])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DUMPBIN$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([NM])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([NM])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^NM$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LN_S], [$as_ln_s])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LN_S])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LN_S$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([FILECMD])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([FILECMD])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^FILECMD$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OBJDUMP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OBJDUMP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DLLTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DLLTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([AR])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([AR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^AR$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([ac_ct_AR])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([ac_ct_AR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^ac_ct_AR$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([STRIP])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([STRIP])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^STRIP$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([RANLIB])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([RANLIB])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^RANLIB$])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LT_OBJDIR$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([LT_OBJDIR], [/* Define to the sub-directory where libtool stores uninstalled libraries. */
|
||||
@%:@undef LT_OBJDIR])
|
||||
m4trace:configure.ac:83: -1- LT_SUPPORTED_TAG([CC])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([MANIFEST_TOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([MANIFEST_TOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^MANIFEST_TOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([DSYMUTIL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([DSYMUTIL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^DSYMUTIL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([NMEDIT])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([NMEDIT])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^NMEDIT$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LIPO])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LIPO])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LIPO$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OTOOL])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OTOOL])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OTOOL$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([OTOOL64])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([OTOOL64])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^OTOOL64$])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST([LT_SYS_LIBRARY_PATH])
|
||||
m4trace:configure.ac:83: -1- AC_SUBST_TRACE([LT_SYS_LIBRARY_PATH])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^LT_SYS_LIBRARY_PATH$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_DLFCN_H], [/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
@%:@undef HAVE_DLFCN_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDIO_H], [/* Define to 1 if you have the <stdio.h> header file. */
|
||||
@%:@undef HAVE_STDIO_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDLIB_H], [/* Define to 1 if you have the <stdlib.h> header file. */
|
||||
@%:@undef HAVE_STDLIB_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STRING_H], [/* Define to 1 if you have the <string.h> header file. */
|
||||
@%:@undef HAVE_STRING_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_INTTYPES_H], [/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
@%:@undef HAVE_INTTYPES_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STDINT_H], [/* Define to 1 if you have the <stdint.h> header file. */
|
||||
@%:@undef HAVE_STDINT_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_STRINGS_H], [/* Define to 1 if you have the <strings.h> header file. */
|
||||
@%:@undef HAVE_STRINGS_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_SYS_STAT_H], [/* Define to 1 if you have the <sys/stat.h> header file. */
|
||||
@%:@undef HAVE_SYS_STAT_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_SYS_TYPES_H], [/* Define to 1 if you have the <sys/types.h> header file. */
|
||||
@%:@undef HAVE_SYS_TYPES_H])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([HAVE_UNISTD_H], [/* Define to 1 if you have the <unistd.h> header file. */
|
||||
@%:@undef HAVE_UNISTD_H])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([STDC_HEADERS])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^STDC_HEADERS$])
|
||||
m4trace:configure.ac:83: -1- AH_OUTPUT([STDC_HEADERS], [/* Define to 1 if all of the C89 standard headers exist (not just the ones
|
||||
required in a freestanding environment). This macro is provided for
|
||||
backward compatibility; new code need not use it. */
|
||||
@%:@undef STDC_HEADERS])
|
||||
m4trace:configure.ac:83: -1- AC_DEFINE_TRACE_LITERAL([HAVE_DLFCN_H])
|
||||
m4trace:configure.ac:83: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
|
||||
m4trace:configure.ac:84: -1- AC_CONFIG_FILES([Makefile])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([LIB@&t@OBJS], [$ac_libobjs])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([LIB@&t@OBJS])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^LIB@&t@OBJS$])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([LTLIBOBJS], [$ac_ltlibobjs])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([LTLIBOBJS])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^LTLIBOBJS$])
|
||||
m4trace:configure.ac:85: -1- AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^am__EXEEXT_TRUE$])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- m4_pattern_allow([^am__EXEEXT_FALSE$])
|
||||
m4trace:configure.ac:85: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_TRUE])
|
||||
m4trace:configure.ac:85: -1- _AM_SUBST_NOTMAKE([am__EXEEXT_FALSE])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_build_prefix])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([top_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_top_srcdir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([abs_top_builddir])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([INSTALL])
|
||||
m4trace:configure.ac:85: -1- AC_SUBST_TRACE([MKDIR_P])
|
||||
m4trace:configure.ac:85: -1- AC_REQUIRE_AUX_FILE([ltmain.sh])
|
||||
Executable
+348
@@ -0,0 +1,348 @@
|
||||
#! /bin/sh
|
||||
# Wrapper for compilers which do not understand '-c -o'.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
# Written by Tom Tromey <tromey@cygnus.com>.
|
||||
#
|
||||
# This program 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.
|
||||
#
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# This file is maintained in Automake, please report
|
||||
# bugs to <bug-automake@gnu.org> or send patches to
|
||||
# <automake-patches@gnu.org>.
|
||||
|
||||
nl='
|
||||
'
|
||||
|
||||
# We need space, tab and new line, in precisely that order. Quoting is
|
||||
# there to prevent tools from complaining about whitespace usage.
|
||||
IFS=" "" $nl"
|
||||
|
||||
file_conv=
|
||||
|
||||
# func_file_conv build_file lazy
|
||||
# Convert a $build file to $host form and store it in $file
|
||||
# Currently only supports Windows hosts. If the determined conversion
|
||||
# type is listed in (the comma separated) LAZY, no conversion will
|
||||
# take place.
|
||||
func_file_conv ()
|
||||
{
|
||||
file=$1
|
||||
case $file in
|
||||
/ | /[!/]*) # absolute file, and not a UNC file
|
||||
if test -z "$file_conv"; then
|
||||
# lazily determine how to convert abs files
|
||||
case `uname -s` in
|
||||
MINGW*)
|
||||
file_conv=mingw
|
||||
;;
|
||||
CYGWIN* | MSYS*)
|
||||
file_conv=cygwin
|
||||
;;
|
||||
*)
|
||||
file_conv=wine
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
case $file_conv/,$2, in
|
||||
*,$file_conv,*)
|
||||
;;
|
||||
mingw/*)
|
||||
file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'`
|
||||
;;
|
||||
cygwin/* | msys/*)
|
||||
file=`cygpath -m "$file" || echo "$file"`
|
||||
;;
|
||||
wine/*)
|
||||
file=`winepath -w "$file" || echo "$file"`
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# func_cl_dashL linkdir
|
||||
# Make cl look for libraries in LINKDIR
|
||||
func_cl_dashL ()
|
||||
{
|
||||
func_file_conv "$1"
|
||||
if test -z "$lib_path"; then
|
||||
lib_path=$file
|
||||
else
|
||||
lib_path="$lib_path;$file"
|
||||
fi
|
||||
linker_opts="$linker_opts -LIBPATH:$file"
|
||||
}
|
||||
|
||||
# func_cl_dashl library
|
||||
# Do a library search-path lookup for cl
|
||||
func_cl_dashl ()
|
||||
{
|
||||
lib=$1
|
||||
found=no
|
||||
save_IFS=$IFS
|
||||
IFS=';'
|
||||
for dir in $lib_path $LIB
|
||||
do
|
||||
IFS=$save_IFS
|
||||
if $shared && test -f "$dir/$lib.dll.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.dll.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/$lib.lib"; then
|
||||
found=yes
|
||||
lib=$dir/$lib.lib
|
||||
break
|
||||
fi
|
||||
if test -f "$dir/lib$lib.a"; then
|
||||
found=yes
|
||||
lib=$dir/lib$lib.a
|
||||
break
|
||||
fi
|
||||
done
|
||||
IFS=$save_IFS
|
||||
|
||||
if test "$found" != yes; then
|
||||
lib=$lib.lib
|
||||
fi
|
||||
}
|
||||
|
||||
# func_cl_wrapper cl arg...
|
||||
# Adjust compile command to suit cl
|
||||
func_cl_wrapper ()
|
||||
{
|
||||
# Assume a capable shell
|
||||
lib_path=
|
||||
shared=:
|
||||
linker_opts=
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.[oO][bB][jJ])
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fo"$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
func_file_conv "$2"
|
||||
set x "$@" -Fe"$file"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
-I)
|
||||
eat=1
|
||||
func_file_conv "$2" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-I*)
|
||||
func_file_conv "${1#-I}" mingw
|
||||
set x "$@" -I"$file"
|
||||
shift
|
||||
;;
|
||||
-l)
|
||||
eat=1
|
||||
func_cl_dashl "$2"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-l*)
|
||||
func_cl_dashl "${1#-l}"
|
||||
set x "$@" "$lib"
|
||||
shift
|
||||
;;
|
||||
-L)
|
||||
eat=1
|
||||
func_cl_dashL "$2"
|
||||
;;
|
||||
-L*)
|
||||
func_cl_dashL "${1#-L}"
|
||||
;;
|
||||
-static)
|
||||
shared=false
|
||||
;;
|
||||
-Wl,*)
|
||||
arg=${1#-Wl,}
|
||||
save_ifs="$IFS"; IFS=','
|
||||
for flag in $arg; do
|
||||
IFS="$save_ifs"
|
||||
linker_opts="$linker_opts $flag"
|
||||
done
|
||||
IFS="$save_ifs"
|
||||
;;
|
||||
-Xlinker)
|
||||
eat=1
|
||||
linker_opts="$linker_opts $2"
|
||||
;;
|
||||
-*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*.cc | *.CC | *.cxx | *.CXX | *.[cC]++)
|
||||
func_file_conv "$1"
|
||||
set x "$@" -Tp"$file"
|
||||
shift
|
||||
;;
|
||||
*.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO])
|
||||
func_file_conv "$1" mingw
|
||||
set x "$@" "$file"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
if test -n "$linker_opts"; then
|
||||
linker_opts="-link$linker_opts"
|
||||
fi
|
||||
exec "$@" $linker_opts
|
||||
exit 1
|
||||
}
|
||||
|
||||
eat=
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: compile [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Wrapper for compilers which do not understand '-c -o'.
|
||||
Remove '-o dest.o' from ARGS, run PROGRAM with the remaining
|
||||
arguments, and rename the output as expected.
|
||||
|
||||
If you are trying to build a whole package this is not the
|
||||
right script to run: please start by reading the file 'INSTALL'.
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "compile $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
|
||||
icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
|
||||
func_cl_wrapper "$@" # Doesn't return...
|
||||
;;
|
||||
esac
|
||||
|
||||
ofile=
|
||||
cfile=
|
||||
|
||||
for arg
|
||||
do
|
||||
if test -n "$eat"; then
|
||||
eat=
|
||||
else
|
||||
case $1 in
|
||||
-o)
|
||||
# configure might choose to run compile as 'compile cc -o foo foo.c'.
|
||||
# So we strip '-o arg' only if arg is an object.
|
||||
eat=1
|
||||
case $2 in
|
||||
*.o | *.obj)
|
||||
ofile=$2
|
||||
;;
|
||||
*)
|
||||
set x "$@" -o "$2"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
*.c)
|
||||
cfile=$1
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set x "$@" "$1"
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
shift
|
||||
done
|
||||
|
||||
if test -z "$ofile" || test -z "$cfile"; then
|
||||
# If no '-o' option was seen then we might have been invoked from a
|
||||
# pattern rule where we don't need one. That is ok -- this is a
|
||||
# normal compilation that the losing compiler can handle. If no
|
||||
# '.c' file was seen then we are probably linking. That is also
|
||||
# ok.
|
||||
exec "$@"
|
||||
fi
|
||||
|
||||
# Name of file we expect compiler to create.
|
||||
cofile=`echo "$cfile" | sed 's|^.*[\\/]||; s|^[a-zA-Z]:||; s/\.c$/.o/'`
|
||||
|
||||
# Create the lock directory.
|
||||
# Note: use '[/\\:.-]' here to ensure that we don't use the same name
|
||||
# that we are using for the .o file. Also, base the name on the expected
|
||||
# object file name, since that is what matters with a parallel build.
|
||||
lockdir=`echo "$cofile" | sed -e 's|[/\\:.-]|_|g'`.d
|
||||
while true; do
|
||||
if mkdir "$lockdir" >/dev/null 2>&1; then
|
||||
break
|
||||
fi
|
||||
sleep 1
|
||||
done
|
||||
# FIXME: race condition here if user kills between mkdir and trap.
|
||||
trap "rmdir '$lockdir'; exit 1" 1 2 15
|
||||
|
||||
# Run the compile.
|
||||
"$@"
|
||||
ret=$?
|
||||
|
||||
if test -f "$cofile"; then
|
||||
test "$cofile" = "$ofile" || mv "$cofile" "$ofile"
|
||||
elif test -f "${cofile}bj"; then
|
||||
test "${cofile}bj" = "$ofile" || mv "${cofile}bj" "$ofile"
|
||||
fi
|
||||
|
||||
rmdir "$lockdir"
|
||||
exit $ret
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
+1748
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,684 @@
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by emacs-zmq configure 1.0.0, which was
|
||||
generated by GNU Autoconf 2.72. Invocation command line was
|
||||
|
||||
$ ./configure CPPFLAGS= --prefix=/home/daniel/repos/emacs-conf/lisp/zmq --enable-shared=emacs-zmq --enable-static=zeromq --without-docs --enable-drafts=yes --enable-libunwind=no --disable-curve-keygen --disable-perf --disable-eventfd
|
||||
|
||||
## --------- ##
|
||||
## Platform. ##
|
||||
## --------- ##
|
||||
|
||||
hostname = daniel-pc
|
||||
uname -m = x86_64
|
||||
uname -r = 6.8.8-arch1-1
|
||||
uname -s = Linux
|
||||
uname -v = #1 SMP PREEMPT_DYNAMIC Sun, 28 Apr 2024 15:59:47 +0000
|
||||
|
||||
/usr/bin/uname -p = unknown
|
||||
/bin/uname -X = unknown
|
||||
|
||||
/bin/arch = unknown
|
||||
/usr/bin/arch -k = unknown
|
||||
/usr/convex/getsysinfo = unknown
|
||||
/usr/bin/hostinfo = unknown
|
||||
/bin/machine = unknown
|
||||
/usr/bin/oslevel = unknown
|
||||
/bin/universe = unknown
|
||||
|
||||
PATH: /home/daniel/.basher/cellar/bin/
|
||||
PATH: /home/daniel/.basher/bin/
|
||||
PATH: /usr/local/go/bin/
|
||||
PATH: /home/daniel/Sync/dotfiles/aa-pc/.local/bin/
|
||||
PATH: /home/daniel/Sync/dotfiles/.local/bin/
|
||||
PATH: /home/daniel/.local/bin/
|
||||
PATH: /home/daniel/.bin/
|
||||
PATH: /usr/sbin/
|
||||
PATH: /sbin/
|
||||
PATH: /usr/local/sbin/
|
||||
PATH: /usr/local/bin/
|
||||
PATH: /usr/bin/
|
||||
PATH: /opt/cuda/bin/
|
||||
PATH: /opt/cuda/nsight_compute/
|
||||
PATH: /opt/cuda/nsight_systems/bin/
|
||||
PATH: /home/daniel/.dotnet/tools/
|
||||
PATH: /usr/lib/jvm/default/bin/
|
||||
PATH: /usr/bin/site_perl/
|
||||
PATH: /usr/bin/vendor_perl/
|
||||
PATH: /usr/bin/core_perl/
|
||||
PATH: /home/daniel/salome_meca/appli_V2020.0.1_universal_universal/
|
||||
PATH: /home/daniel/go/bin/
|
||||
|
||||
|
||||
## ----------- ##
|
||||
## Core tests. ##
|
||||
## ----------- ##
|
||||
|
||||
configure:2397: looking for aux files: ltmain.sh config.guess config.sub ar-lib compile missing install-sh
|
||||
configure:2410: trying ./
|
||||
configure:2439: ./ltmain.sh found
|
||||
configure:2439: ./config.guess found
|
||||
configure:2439: ./config.sub found
|
||||
configure:2439: ./ar-lib found
|
||||
configure:2439: ./compile found
|
||||
configure:2439: ./missing found
|
||||
configure:2421: ./install-sh found
|
||||
configure:2572: checking for a BSD-compatible install
|
||||
configure:2646: result: /usr/bin/install -c
|
||||
configure:2657: checking whether build environment is sane
|
||||
configure:2712: result: yes
|
||||
configure:2873: checking for a race-free mkdir -p
|
||||
configure:2916: result: /usr/sbin/mkdir -p
|
||||
configure:2923: checking for gawk
|
||||
configure:2944: found /usr/sbin/gawk
|
||||
configure:2956: result: gawk
|
||||
configure:2967: checking whether make sets $(MAKE)
|
||||
configure:2991: result: yes
|
||||
configure:3021: checking whether make supports nested variables
|
||||
configure:3040: result: yes
|
||||
configure:3239: checking for gcc
|
||||
configure:3260: found /usr/sbin/gcc
|
||||
configure:3272: result: gcc
|
||||
configure:3631: checking for C compiler version
|
||||
configure:3640: gcc --version >&5
|
||||
gcc (GCC) 13.2.1 20240417
|
||||
Copyright (C) 2023 Free Software Foundation, Inc.
|
||||
This is free software; see the source for copying conditions. There is NO
|
||||
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
configure:3651: $? = 0
|
||||
configure:3640: gcc -v >&5
|
||||
Using built-in specs.
|
||||
COLLECT_GCC=gcc
|
||||
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-pc-linux-gnu/13.2.1/lto-wrapper
|
||||
Target: x86_64-pc-linux-gnu
|
||||
Configured with: /build/gcc/src/gcc/configure --enable-languages=ada,c,c++,d,fortran,go,lto,m2,objc,obj-c++ --enable-bootstrap --prefix=/usr --libdir=/usr/lib --libexecdir=/usr/lib --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=https://gitlab.archlinux.org/archlinux/packaging/packages/gcc/-/issues --with-build-config=bootstrap-lto --with-linker-hash-style=gnu --with-system-zlib --enable-__cxa_atexit --enable-cet=auto --enable-checking=release --enable-clocale=gnu --enable-default-pie --enable-default-ssp --enable-gnu-indirect-function --enable-gnu-unique-object --enable-libstdcxx-backtrace --enable-link-serialization=1 --enable-linker-build-id --enable-lto --enable-multilib --enable-plugin --enable-shared --enable-threads=posix --disable-libssp --disable-libstdcxx-pch --disable-werror
|
||||
Thread model: posix
|
||||
Supported LTO compression algorithms: zlib zstd
|
||||
gcc version 13.2.1 20240417 (GCC)
|
||||
configure:3651: $? = 0
|
||||
configure:3640: gcc -V >&5
|
||||
gcc: error: unrecognized command-line option '-V'
|
||||
gcc: fatal error: no input files
|
||||
compilation terminated.
|
||||
configure:3651: $? = 1
|
||||
configure:3640: gcc -qversion >&5
|
||||
gcc: error: unrecognized command-line option '-qversion'; did you mean '--version'?
|
||||
gcc: fatal error: no input files
|
||||
compilation terminated.
|
||||
configure:3651: $? = 1
|
||||
configure:3640: gcc -version >&5
|
||||
gcc: error: unrecognized command-line option '-version'
|
||||
gcc: fatal error: no input files
|
||||
compilation terminated.
|
||||
configure:3651: $? = 1
|
||||
configure:3671: checking whether the C compiler works
|
||||
configure:3693: gcc conftest.c >&5
|
||||
configure:3697: $? = 0
|
||||
configure:3748: result: yes
|
||||
configure:3752: checking for C compiler default output file name
|
||||
configure:3754: result: a.out
|
||||
configure:3760: checking for suffix of executables
|
||||
configure:3767: gcc -o conftest conftest.c >&5
|
||||
configure:3771: $? = 0
|
||||
configure:3795: result:
|
||||
configure:3819: checking whether we are cross compiling
|
||||
configure:3827: gcc -o conftest conftest.c >&5
|
||||
configure:3831: $? = 0
|
||||
configure:3838: ./conftest
|
||||
configure:3842: $? = 0
|
||||
configure:3857: result: no
|
||||
configure:3863: checking for suffix of object files
|
||||
configure:3886: gcc -c conftest.c >&5
|
||||
configure:3890: $? = 0
|
||||
configure:3914: result: o
|
||||
configure:3918: checking whether the compiler supports GNU C
|
||||
configure:3938: gcc -c conftest.c >&5
|
||||
configure:3938: $? = 0
|
||||
configure:3950: result: yes
|
||||
configure:3961: checking whether gcc accepts -g
|
||||
configure:3982: gcc -c -g conftest.c >&5
|
||||
configure:3982: $? = 0
|
||||
configure:4029: result: yes
|
||||
configure:4049: checking for gcc option to enable C11 features
|
||||
configure:4064: gcc -c -g -O2 conftest.c >&5
|
||||
configure:4064: $? = 0
|
||||
configure:4083: result: none needed
|
||||
configure:4207: checking whether gcc understands -c and -o together
|
||||
configure:4230: gcc -c conftest.c -o conftest2.o
|
||||
configure:4233: $? = 0
|
||||
configure:4230: gcc -c conftest.c -o conftest2.o
|
||||
configure:4233: $? = 0
|
||||
configure:4246: result: yes
|
||||
configure:4266: checking whether make supports the include directive
|
||||
configure:4281: make -f confmf.GNU && cat confinc.out
|
||||
make[2]: Entering directory '/home/daniel/repos/emacs-conf/lisp/zmq/src'
|
||||
make[2]: Leaving directory '/home/daniel/repos/emacs-conf/lisp/zmq/src'
|
||||
this is the am__doit target
|
||||
configure:4284: $? = 0
|
||||
configure:4303: result: yes (GNU style)
|
||||
configure:4329: checking dependency style of gcc
|
||||
configure:4442: result: gcc3
|
||||
configure:4514: checking for ar
|
||||
configure:4535: found /usr/sbin/ar
|
||||
configure:4547: result: ar
|
||||
configure:4573: checking the archiver (ar) interface
|
||||
configure:4590: gcc -c -g -O2 conftest.c >&5
|
||||
configure:4590: $? = 0
|
||||
configure:4593: ar cru libconftest.a conftest.o >&5
|
||||
ar: `u' modifier ignored since `D' is the default (see `U')
|
||||
configure:4596: $? = 0
|
||||
configure:4625: result: ar
|
||||
configure:4651: checking build system type
|
||||
configure:4667: result: x86_64-pc-linux-gnu
|
||||
configure:4687: checking host system type
|
||||
configure:4702: result: x86_64-pc-linux-gnu
|
||||
configure:4783: checking for pkg-config
|
||||
configure:4806: found /usr/sbin/pkg-config
|
||||
configure:4819: result: /usr/sbin/pkg-config
|
||||
configure:4844: checking pkg-config is at least version 0.9.0
|
||||
configure:4847: result: yes
|
||||
configure:4857: checking for libzmq
|
||||
configure:4864: $PKG_CONFIG --exists --print-errors "libzmq"
|
||||
configure:4867: $? = 0
|
||||
configure:4881: $PKG_CONFIG --exists --print-errors "libzmq"
|
||||
configure:4884: $? = 0
|
||||
configure:4930: result: yes
|
||||
configure:4933: checking for library containing zmq_poller_new
|
||||
configure:4969: gcc -o conftest -g -O2 conftest.c >&5
|
||||
/usr/sbin/ld: /tmp/ccL2xWUv.o: in function `main':
|
||||
/home/daniel/repos/emacs-conf/lisp/zmq/src/conftest.c:25:(.text.startup+0x5): undefined reference to `zmq_poller_new'
|
||||
collect2: error: ld returned 1 exit status
|
||||
configure:4969: $? = 1
|
||||
configure: failed program was:
|
||||
| /* confdefs.h */
|
||||
| #define PACKAGE_NAME "emacs-zmq"
|
||||
| #define PACKAGE_TARNAME "emacs-zmq"
|
||||
| #define PACKAGE_VERSION "1.0.0"
|
||||
| #define PACKAGE_STRING "emacs-zmq 1.0.0"
|
||||
| #define PACKAGE_BUGREPORT "nathanielnicandro@gmail.com"
|
||||
| #define PACKAGE_URL ""
|
||||
| #define PACKAGE "emacs-zmq"
|
||||
| #define VERSION "1.0.0"
|
||||
| /* end confdefs.h. */
|
||||
|
|
||||
| /* Override any GCC internal prototype to avoid an error.
|
||||
| Use char because int might match the return type of a GCC
|
||||
| builtin and then its argument prototype would still apply.
|
||||
| The 'extern "C"' is for builds by C++ compilers;
|
||||
| although this is not generally supported in C code supporting it here
|
||||
| has little cost and some practical benefit (sr 110532). */
|
||||
| #ifdef __cplusplus
|
||||
| extern "C"
|
||||
| #endif
|
||||
| char zmq_poller_new (void);
|
||||
| int
|
||||
| main (void)
|
||||
| {
|
||||
| return zmq_poller_new ();
|
||||
| ;
|
||||
| return 0;
|
||||
| }
|
||||
configure:4969: gcc -o conftest -g -O2 conftest.c -lzmq >&5
|
||||
configure:4969: $? = 0
|
||||
configure:4991: result: -lzmq
|
||||
configure:5136: checking how to print strings
|
||||
configure:5163: result: printf
|
||||
configure:5184: checking for a sed that does not truncate output
|
||||
configure:5256: result: /usr/sbin/sed
|
||||
configure:5274: checking for grep that handles long lines and -e
|
||||
configure:5340: result: /usr/sbin/grep
|
||||
configure:5345: checking for egrep
|
||||
configure:5415: result: /usr/sbin/grep -E
|
||||
configure:5422: checking for fgrep
|
||||
configure:5492: result: /usr/sbin/grep -F
|
||||
configure:5529: checking for ld used by gcc
|
||||
configure:5598: result: /usr/sbin/ld
|
||||
configure:5605: checking if the linker (/usr/sbin/ld) is GNU ld
|
||||
configure:5622: result: yes
|
||||
configure:5634: checking for BSD- or MS-compatible name lister (nm)
|
||||
configure:5690: result: /usr/sbin/nm -B
|
||||
configure:5832: checking the name lister (/usr/sbin/nm -B) interface
|
||||
configure:5840: gcc -c -g -O2 conftest.c >&5
|
||||
configure:5843: /usr/sbin/nm -B "conftest.o"
|
||||
configure:5846: output
|
||||
0000000000000000 B some_variable
|
||||
configure:5854: result: BSD nm
|
||||
configure:5857: checking whether ln -s works
|
||||
configure:5861: result: yes
|
||||
configure:5869: checking the maximum length of command line arguments
|
||||
configure:6002: result: 1572864
|
||||
configure:6050: checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format
|
||||
configure:6092: result: func_convert_file_noop
|
||||
configure:6099: checking how to convert x86_64-pc-linux-gnu file names to toolchain format
|
||||
configure:6121: result: func_convert_file_noop
|
||||
configure:6128: checking for /usr/sbin/ld option to reload object files
|
||||
configure:6137: result: -r
|
||||
configure:6217: checking for file
|
||||
configure:6238: found /usr/sbin/file
|
||||
configure:6250: result: file
|
||||
configure:6327: checking for objdump
|
||||
configure:6348: found /usr/sbin/objdump
|
||||
configure:6360: result: objdump
|
||||
configure:6389: checking how to recognize dependent libraries
|
||||
configure:6591: result: pass_all
|
||||
configure:6682: checking for dlltool
|
||||
configure:6718: result: no
|
||||
configure:6745: checking how to associate runtime and link libraries
|
||||
configure:6774: result: printf %s\n
|
||||
configure:6926: checking for archiver @FILE support
|
||||
configure:6944: gcc -c -g -O2 conftest.c >&5
|
||||
configure:6944: $? = 0
|
||||
configure:6948: ar cr libconftest.a @conftest.lst >&5
|
||||
configure:6951: $? = 0
|
||||
configure:6956: ar cr libconftest.a @conftest.lst >&5
|
||||
ar: conftest.o: No such file or directory
|
||||
configure:6959: $? = 1
|
||||
configure:6972: result: @
|
||||
configure:7036: checking for strip
|
||||
configure:7057: found /usr/sbin/strip
|
||||
configure:7069: result: strip
|
||||
configure:7147: checking for ranlib
|
||||
configure:7168: found /usr/sbin/ranlib
|
||||
configure:7180: result: ranlib
|
||||
configure:7282: checking command to parse /usr/sbin/nm -B output from gcc object
|
||||
configure:7436: gcc -c -g -O2 conftest.c >&5
|
||||
configure:7439: $? = 0
|
||||
configure:7443: /usr/sbin/nm -B conftest.o \| /usr/sbin/sed -n -e 's/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p' | /usr/sbin/sed '/ __gnu_lto/d' \> conftest.nm
|
||||
configure:7446: $? = 0
|
||||
configure:7512: gcc -o conftest -g -O2 conftest.c conftstm.o >&5
|
||||
configure:7515: $? = 0
|
||||
configure:7554: result: ok
|
||||
configure:7601: checking for sysroot
|
||||
configure:7633: result: no
|
||||
configure:7640: checking for a working dd
|
||||
configure:7685: result: /usr/sbin/dd
|
||||
configure:7689: checking how to truncate binary pipes
|
||||
configure:7706: result: /usr/sbin/dd bs=4096 count=1
|
||||
configure:7843: gcc -c -g -O2 conftest.c >&5
|
||||
configure:7846: $? = 0
|
||||
configure:8046: checking for mt
|
||||
configure:8082: result: no
|
||||
configure:8102: checking if : is a manifest tool
|
||||
configure:8109: : '-?'
|
||||
configure:8118: result: no
|
||||
configure:8857: checking for stdio.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for stdlib.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for string.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for inttypes.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for stdint.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for strings.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for sys/stat.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for sys/types.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8857: checking for unistd.h
|
||||
configure:8857: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8857: $? = 0
|
||||
configure:8857: result: yes
|
||||
configure:8882: checking for dlfcn.h
|
||||
configure:8882: gcc -c -g -O2 conftest.c >&5
|
||||
configure:8882: $? = 0
|
||||
configure:8882: result: yes
|
||||
configure:9479: checking for objdir
|
||||
configure:9496: result: .libs
|
||||
configure:9762: checking if gcc supports -fno-rtti -fno-exceptions
|
||||
configure:9781: gcc -c -g -O2 -fno-rtti -fno-exceptions conftest.c >&5
|
||||
cc1: warning: command-line option '-fno-rtti' is valid for C++/D/ObjC++ but not for C
|
||||
configure:9785: $? = 0
|
||||
configure:9799: result: no
|
||||
configure:10157: checking for gcc option to produce PIC
|
||||
configure:10166: result: -fPIC -DPIC
|
||||
configure:10174: checking if gcc PIC flag -fPIC -DPIC works
|
||||
configure:10193: gcc -c -g -O2 -fPIC -DPIC -DPIC conftest.c >&5
|
||||
configure:10197: $? = 0
|
||||
configure:10211: result: yes
|
||||
configure:10240: checking if gcc static flag -static works
|
||||
configure:10270: result: no
|
||||
configure:10285: checking if gcc supports -c -o file.o
|
||||
configure:10307: gcc -c -g -O2 -o out/conftest2.o conftest.c >&5
|
||||
configure:10311: $? = 0
|
||||
configure:10334: result: yes
|
||||
configure:10342: checking if gcc supports -c -o file.o
|
||||
configure:10391: result: yes
|
||||
configure:10424: checking whether the gcc linker (/usr/sbin/ld -m elf_x86_64) supports shared libraries
|
||||
configure:11697: result: yes
|
||||
configure:11734: checking whether -lc should be explicitly linked in
|
||||
configure:11743: gcc -c -g -O2 conftest.c >&5
|
||||
configure:11746: $? = 0
|
||||
configure:11761: gcc -shared -fPIC -DPIC conftest.o -v -Wl,-soname -Wl,conftest -o conftest 2\>\&1 \| /usr/sbin/grep -lc \>/dev/null 2\>\&1
|
||||
configure:11764: $? = 0
|
||||
configure:11779: result: no
|
||||
configure:11939: checking dynamic linker characteristics
|
||||
configure:12521: gcc -o conftest -g -O2 -Wl,-rpath -Wl,/foo conftest.c -lzmq >&5
|
||||
configure:12521: $? = 0
|
||||
configure:12761: result: GNU/Linux ld.so
|
||||
configure:12883: checking how to hardcode library paths into programs
|
||||
configure:12908: result: immediate
|
||||
configure:13508: checking whether stripping libraries is possible
|
||||
configure:13517: result: yes
|
||||
configure:13559: checking if libtool supports shared libraries
|
||||
configure:13561: result: yes
|
||||
configure:13564: checking whether to build shared libraries
|
||||
configure:13589: result: yes
|
||||
configure:13592: checking whether to build static libraries
|
||||
configure:13596: result: no
|
||||
configure:13770: checking that generated files are newer than configure
|
||||
configure:13776: result: done
|
||||
configure:13807: creating ./config.status
|
||||
|
||||
## ---------------------- ##
|
||||
## Running config.status. ##
|
||||
## ---------------------- ##
|
||||
|
||||
This file was extended by emacs-zmq config.status 1.0.0, which was
|
||||
generated by GNU Autoconf 2.72. Invocation command line was
|
||||
|
||||
CONFIG_FILES =
|
||||
CONFIG_HEADERS =
|
||||
CONFIG_LINKS =
|
||||
CONFIG_COMMANDS =
|
||||
$ ./config.status
|
||||
|
||||
on daniel-pc
|
||||
|
||||
config.status:1022: creating Makefile
|
||||
config.status:1194: executing depfiles commands
|
||||
config.status:1271: cd . && sed -e '/# am--include-marker/d' Makefile | make -f - am--depfiles
|
||||
make[2]: Entering directory '/home/daniel/repos/emacs-conf/lisp/zmq/src'
|
||||
make[2]: Leaving directory '/home/daniel/repos/emacs-conf/lisp/zmq/src'
|
||||
config.status:1276: $? = 0
|
||||
config.status:1194: executing libtool commands
|
||||
|
||||
## ---------------- ##
|
||||
## Cache variables. ##
|
||||
## ---------------- ##
|
||||
|
||||
ac_cv_build=x86_64-pc-linux-gnu
|
||||
ac_cv_c_compiler_gnu=yes
|
||||
ac_cv_env_CC_set=
|
||||
ac_cv_env_CC_value=
|
||||
ac_cv_env_CFLAGS_set=
|
||||
ac_cv_env_CFLAGS_value=
|
||||
ac_cv_env_CPPFLAGS_set=set
|
||||
ac_cv_env_CPPFLAGS_value=
|
||||
ac_cv_env_LDFLAGS_set=
|
||||
ac_cv_env_LDFLAGS_value=
|
||||
ac_cv_env_LIBS_set=
|
||||
ac_cv_env_LIBS_value=
|
||||
ac_cv_env_LT_SYS_LIBRARY_PATH_set=
|
||||
ac_cv_env_LT_SYS_LIBRARY_PATH_value=
|
||||
ac_cv_env_PKG_CONFIG_LIBDIR_set=
|
||||
ac_cv_env_PKG_CONFIG_LIBDIR_value=
|
||||
ac_cv_env_PKG_CONFIG_PATH_set=
|
||||
ac_cv_env_PKG_CONFIG_PATH_value=
|
||||
ac_cv_env_PKG_CONFIG_set=
|
||||
ac_cv_env_PKG_CONFIG_value=
|
||||
ac_cv_env_ZMQ_CFLAGS_set=
|
||||
ac_cv_env_ZMQ_CFLAGS_value=
|
||||
ac_cv_env_ZMQ_LIBS_set=
|
||||
ac_cv_env_ZMQ_LIBS_value=
|
||||
ac_cv_env_build_alias_set=
|
||||
ac_cv_env_build_alias_value=
|
||||
ac_cv_env_host_alias_set=
|
||||
ac_cv_env_host_alias_value=
|
||||
ac_cv_env_target_alias_set=
|
||||
ac_cv_env_target_alias_value=
|
||||
ac_cv_header_dlfcn_h=yes
|
||||
ac_cv_header_inttypes_h=yes
|
||||
ac_cv_header_stdint_h=yes
|
||||
ac_cv_header_stdio_h=yes
|
||||
ac_cv_header_stdlib_h=yes
|
||||
ac_cv_header_string_h=yes
|
||||
ac_cv_header_strings_h=yes
|
||||
ac_cv_header_sys_stat_h=yes
|
||||
ac_cv_header_sys_types_h=yes
|
||||
ac_cv_header_unistd_h=yes
|
||||
ac_cv_host=x86_64-pc-linux-gnu
|
||||
ac_cv_objext=o
|
||||
ac_cv_path_EGREP='/usr/sbin/grep -E'
|
||||
ac_cv_path_EGREP_TRADITIONAL='/usr/sbin/grep -E'
|
||||
ac_cv_path_FGREP='/usr/sbin/grep -F'
|
||||
ac_cv_path_GREP=/usr/sbin/grep
|
||||
ac_cv_path_SED=/usr/sbin/sed
|
||||
ac_cv_path_ac_pt_PKG_CONFIG=/usr/sbin/pkg-config
|
||||
ac_cv_path_install='/usr/bin/install -c'
|
||||
ac_cv_path_lt_DD=/usr/sbin/dd
|
||||
ac_cv_path_mkdir=/usr/sbin/mkdir
|
||||
ac_cv_prog_AWK=gawk
|
||||
ac_cv_prog_ac_ct_AR=ar
|
||||
ac_cv_prog_ac_ct_CC=gcc
|
||||
ac_cv_prog_ac_ct_FILECMD=file
|
||||
ac_cv_prog_ac_ct_OBJDUMP=objdump
|
||||
ac_cv_prog_ac_ct_RANLIB=ranlib
|
||||
ac_cv_prog_ac_ct_STRIP=strip
|
||||
ac_cv_prog_cc_c11=
|
||||
ac_cv_prog_cc_g=yes
|
||||
ac_cv_prog_cc_stdc=
|
||||
ac_cv_prog_make_make_set=yes
|
||||
ac_cv_search_zmq_poller_new=-lzmq
|
||||
am_cv_CC_dependencies_compiler_type=gcc3
|
||||
am_cv_ar_interface=ar
|
||||
am_cv_make_support_nested_variables=yes
|
||||
am_cv_prog_cc_c_o=yes
|
||||
lt_cv_ar_at_file=@
|
||||
lt_cv_archive_cmds_need_lc=no
|
||||
lt_cv_deplibs_check_method=pass_all
|
||||
lt_cv_file_magic_cmd='$MAGIC_CMD'
|
||||
lt_cv_file_magic_test_file=
|
||||
lt_cv_ld_reload_flag=-r
|
||||
lt_cv_nm_interface='BSD nm'
|
||||
lt_cv_objdir=.libs
|
||||
lt_cv_path_LD=/usr/sbin/ld
|
||||
lt_cv_path_NM='/usr/sbin/nm -B'
|
||||
lt_cv_path_mainfest_tool=no
|
||||
lt_cv_prog_compiler_c_o=yes
|
||||
lt_cv_prog_compiler_pic='-fPIC -DPIC'
|
||||
lt_cv_prog_compiler_pic_works=yes
|
||||
lt_cv_prog_compiler_rtti_exceptions=no
|
||||
lt_cv_prog_compiler_static_works=no
|
||||
lt_cv_prog_gnu_ld=yes
|
||||
lt_cv_sharedlib_from_linklib_cmd='printf %s\n'
|
||||
lt_cv_shlibpath_overrides_runpath=yes
|
||||
lt_cv_sys_global_symbol_pipe='/usr/sbin/sed -n -e '\''s/^.*[ ]\([ABCDGIRSTW][ABCDGIRSTW]*\)[ ][ ]*\([_A-Za-z][_A-Za-z0-9]*\)$/\1 \2 \2/p'\'' | /usr/sbin/sed '\''/ __gnu_lto/d'\'''
|
||||
lt_cv_sys_global_symbol_to_c_name_address='/usr/sbin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"\1", (void *) \&\1},/p'\'''
|
||||
lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='/usr/sbin/sed -n -e '\''s/^: \(.*\) .*$/ {"\1", (void *) 0},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(lib.*\)$/ {"\1", (void *) \&\1},/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/ {"lib\1", (void *) \&\1},/p'\'''
|
||||
lt_cv_sys_global_symbol_to_cdecl='/usr/sbin/sed -n -e '\''s/^T .* \(.*\)$/extern int \1();/p'\'' -e '\''s/^[ABCDGIRSTW][ABCDGIRSTW]* .* \(.*\)$/extern char \1;/p'\'''
|
||||
lt_cv_sys_global_symbol_to_import=
|
||||
lt_cv_sys_max_cmd_len=1572864
|
||||
lt_cv_to_host_file_cmd=func_convert_file_noop
|
||||
lt_cv_to_tool_file_cmd=func_convert_file_noop
|
||||
lt_cv_truncate_bin='/usr/sbin/dd bs=4096 count=1'
|
||||
pkg_cv_ZMQ_CFLAGS='-DZMQ_BUILD_DRAFT_API=1 -I/usr/include/p11-kit-1 -I/usr/include/pgm-5.3'
|
||||
pkg_cv_ZMQ_LIBS=-lzmq
|
||||
|
||||
## ----------------- ##
|
||||
## Output variables. ##
|
||||
## ----------------- ##
|
||||
|
||||
ACLOCAL='${SHELL} '\''/home/daniel/repos/emacs-conf/lisp/zmq/src/missing'\'' aclocal-1.16'
|
||||
AMDEPBACKSLASH='\'
|
||||
AMDEP_FALSE='#'
|
||||
AMDEP_TRUE=''
|
||||
AMTAR='$${TAR-tar}'
|
||||
AM_BACKSLASH='\'
|
||||
AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
|
||||
AM_DEFAULT_VERBOSITY='1'
|
||||
AM_V='$(V)'
|
||||
AR='ar'
|
||||
AS='as'
|
||||
AUTOCONF='${SHELL} '\''/home/daniel/repos/emacs-conf/lisp/zmq/src/missing'\'' autoconf'
|
||||
AUTOHEADER='${SHELL} '\''/home/daniel/repos/emacs-conf/lisp/zmq/src/missing'\'' autoheader'
|
||||
AUTOMAKE='${SHELL} '\''/home/daniel/repos/emacs-conf/lisp/zmq/src/missing'\'' automake-1.16'
|
||||
AWK='gawk'
|
||||
CC='gcc'
|
||||
CCDEPMODE='depmode=gcc3'
|
||||
CFLAGS='-g -O2'
|
||||
CPPFLAGS=''
|
||||
CSCOPE='cscope'
|
||||
CTAGS='ctags'
|
||||
CYGPATH_W='echo'
|
||||
DEFS='-DPACKAGE_NAME=\"emacs-zmq\" -DPACKAGE_TARNAME=\"emacs-zmq\" -DPACKAGE_VERSION=\"1.0.0\" -DPACKAGE_STRING=\"emacs-zmq\ 1.0.0\" -DPACKAGE_BUGREPORT=\"nathanielnicandro@gmail.com\" -DPACKAGE_URL=\"\" -DPACKAGE=\"emacs-zmq\" -DVERSION=\"1.0.0\" -DZMQ_BUILD_DRAFT_API=1 -DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1 -DSTDC_HEADERS=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\"'
|
||||
DEPDIR='.deps'
|
||||
DLLTOOL='false'
|
||||
DSYMUTIL=''
|
||||
DUMPBIN=''
|
||||
ECHO_C=''
|
||||
ECHO_N='-n'
|
||||
ECHO_T=''
|
||||
EGREP='/usr/sbin/grep -E'
|
||||
ETAGS='etags'
|
||||
EXEEXT=''
|
||||
FGREP='/usr/sbin/grep -F'
|
||||
FILECMD='file'
|
||||
GREP='/usr/sbin/grep'
|
||||
INSTALL_DATA='${INSTALL} -m 644'
|
||||
INSTALL_PROGRAM='${INSTALL}'
|
||||
INSTALL_SCRIPT='${INSTALL}'
|
||||
INSTALL_STRIP_PROGRAM='$(install_sh) -c -s'
|
||||
LD='/usr/sbin/ld -m elf_x86_64'
|
||||
LDFLAGS=''
|
||||
LIBOBJS=''
|
||||
LIBS='-lzmq '
|
||||
LIBTOOL='$(SHELL) $(top_builddir)/libtool'
|
||||
LIPO=''
|
||||
LN_S='ln -s'
|
||||
LTLIBOBJS=''
|
||||
LT_SYS_LIBRARY_PATH=''
|
||||
MAKEINFO='${SHELL} '\''/home/daniel/repos/emacs-conf/lisp/zmq/src/missing'\'' makeinfo'
|
||||
MANIFEST_TOOL=':'
|
||||
MAYBE_LIBZMQ=''
|
||||
MKDIR_P='/usr/sbin/mkdir -p'
|
||||
MODULE_EXT='.so'
|
||||
NM='/usr/sbin/nm -B'
|
||||
NMEDIT=''
|
||||
OBJDUMP='objdump'
|
||||
OBJEXT='o'
|
||||
OTOOL64=''
|
||||
OTOOL=''
|
||||
PACKAGE='emacs-zmq'
|
||||
PACKAGE_BUGREPORT='nathanielnicandro@gmail.com'
|
||||
PACKAGE_NAME='emacs-zmq'
|
||||
PACKAGE_STRING='emacs-zmq 1.0.0'
|
||||
PACKAGE_TARNAME='emacs-zmq'
|
||||
PACKAGE_URL=''
|
||||
PACKAGE_VERSION='1.0.0'
|
||||
PATH_SEPARATOR=':'
|
||||
PKG_CONFIG='/usr/sbin/pkg-config'
|
||||
PKG_CONFIG_LIBDIR=''
|
||||
PKG_CONFIG_PATH=''
|
||||
RANLIB='ranlib'
|
||||
SED='/usr/sbin/sed'
|
||||
SET_MAKE=''
|
||||
SHELL='/bin/sh'
|
||||
STRIP='strip'
|
||||
VERSION='1.0.0'
|
||||
WINDOWS_FALSE=''
|
||||
WINDOWS_TRUE='#'
|
||||
ZMQ_BUILD_LOCALLY_FALSE=''
|
||||
ZMQ_BUILD_LOCALLY_TRUE='#'
|
||||
ZMQ_CFLAGS='-DZMQ_BUILD_DRAFT_API=1 -I/usr/include/p11-kit-1 -I/usr/include/pgm-5.3'
|
||||
ZMQ_LIBS='-lzmq'
|
||||
ac_ct_AR='ar'
|
||||
ac_ct_CC='gcc'
|
||||
ac_ct_DUMPBIN=''
|
||||
am__EXEEXT_FALSE=''
|
||||
am__EXEEXT_TRUE='#'
|
||||
am__fastdepCC_FALSE='#'
|
||||
am__fastdepCC_TRUE=''
|
||||
am__include='include'
|
||||
am__isrc=''
|
||||
am__leading_dot='.'
|
||||
am__nodep='_no'
|
||||
am__quote=''
|
||||
am__tar='$${TAR-tar} chof - "$$tardir"'
|
||||
am__untar='$${TAR-tar} xf -'
|
||||
bindir='${exec_prefix}/bin'
|
||||
build='x86_64-pc-linux-gnu'
|
||||
build_alias=''
|
||||
build_cpu='x86_64'
|
||||
build_os='linux-gnu'
|
||||
build_vendor='pc'
|
||||
datadir='${datarootdir}'
|
||||
datarootdir='${prefix}/share'
|
||||
docdir='${datarootdir}/doc/${PACKAGE_TARNAME}'
|
||||
dvidir='${docdir}'
|
||||
exec_prefix='${prefix}'
|
||||
host='x86_64-pc-linux-gnu'
|
||||
host_alias=''
|
||||
host_cpu='x86_64'
|
||||
host_os='linux-gnu'
|
||||
host_vendor='pc'
|
||||
htmldir='${docdir}'
|
||||
includedir='${prefix}/include'
|
||||
infodir='${datarootdir}/info'
|
||||
install_sh='${SHELL} /home/daniel/repos/emacs-conf/lisp/zmq/src/install-sh'
|
||||
libdir='${exec_prefix}/lib'
|
||||
libexecdir='${exec_prefix}/libexec'
|
||||
localedir='${datarootdir}/locale'
|
||||
localstatedir='${prefix}/var'
|
||||
mandir='${datarootdir}/man'
|
||||
mkdir_p='$(MKDIR_P)'
|
||||
oldincludedir='/usr/include'
|
||||
pdfdir='${docdir}'
|
||||
prefix='/home/daniel/repos/emacs-conf/lisp/zmq'
|
||||
program_transform_name='s,x,x,'
|
||||
psdir='${docdir}'
|
||||
runstatedir='${localstatedir}/run'
|
||||
sbindir='${exec_prefix}/sbin'
|
||||
sharedstatedir='${prefix}/com'
|
||||
subdirs=''
|
||||
sysconfdir='${prefix}/etc'
|
||||
target_alias=''
|
||||
|
||||
## ----------- ##
|
||||
## confdefs.h. ##
|
||||
## ----------- ##
|
||||
|
||||
/* confdefs.h */
|
||||
#define PACKAGE_NAME "emacs-zmq"
|
||||
#define PACKAGE_TARNAME "emacs-zmq"
|
||||
#define PACKAGE_VERSION "1.0.0"
|
||||
#define PACKAGE_STRING "emacs-zmq 1.0.0"
|
||||
#define PACKAGE_BUGREPORT "nathanielnicandro@gmail.com"
|
||||
#define PACKAGE_URL ""
|
||||
#define PACKAGE "emacs-zmq"
|
||||
#define VERSION "1.0.0"
|
||||
#define ZMQ_BUILD_DRAFT_API 1
|
||||
#define HAVE_STDIO_H 1
|
||||
#define HAVE_STDLIB_H 1
|
||||
#define HAVE_STRING_H 1
|
||||
#define HAVE_INTTYPES_H 1
|
||||
#define HAVE_STDINT_H 1
|
||||
#define HAVE_STRINGS_H 1
|
||||
#define HAVE_SYS_STAT_H 1
|
||||
#define HAVE_SYS_TYPES_H 1
|
||||
#define HAVE_UNISTD_H 1
|
||||
#define STDC_HEADERS 1
|
||||
#define HAVE_DLFCN_H 1
|
||||
#define LT_OBJDIR ".libs/"
|
||||
|
||||
configure: exit 0
|
||||
Executable
+1854
File diff suppressed because it is too large
Load Diff
+1884
File diff suppressed because it is too large
Load Diff
+15928
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,85 @@
|
||||
AC_PREREQ([2.69])
|
||||
AC_INIT([emacs-zmq], [1.0.0], [nathanielnicandro@gmail.com])
|
||||
|
||||
AC_CONFIG_SRCDIR([core.c])
|
||||
AC_CONFIG_MACRO_DIRS([m4])
|
||||
AM_INIT_AUTOMAKE([-Wall -Wno-override foreign])
|
||||
AC_PROG_CC
|
||||
AM_PROG_AR
|
||||
AC_CANONICAL_HOST
|
||||
|
||||
PKG_CHECK_MODULES([ZMQ], [libzmq], [
|
||||
AC_SEARCH_LIBS([zmq_poller_new], [zmq], [
|
||||
dnl FIXME: This isn't necessarily true in ZMQ >= 4.3
|
||||
AC_DEFINE([ZMQ_BUILD_DRAFT_API], 1)
|
||||
], [
|
||||
AC_MSG_NOTICE([incompatible libzmq, building one locally])
|
||||
ZMQ_BUILD_LOCALLY=yes
|
||||
])
|
||||
], [
|
||||
AC_MSG_NOTICE([libzmq not found by pkg-config, building one locally])
|
||||
ZMQ_BUILD_LOCALLY=yes
|
||||
])
|
||||
|
||||
if test "x$ZMQ_BUILD_LOCALLY" != x; then
|
||||
if test "x$ZMQ_VERSION" == x; then ZMQ_VERSION="4.3.1"; fi
|
||||
if test "x$ZMQ_GIT_REPO" == x; then ZMQ_GIT_REPO="https://github.com/zeromq/libzmq"; fi
|
||||
if test ! -d libzmq/.git; then git clone $ZMQ_GIT_REPO libzmq; fi
|
||||
AC_CONFIG_SUBDIRS([libzmq])
|
||||
# Ensure the libzmq/configure script is generated
|
||||
cd libzmq
|
||||
if test "`git describe --candidates=0 2>/dev/null || echo x`" != "v${ZMQ_VERSION}"; then
|
||||
git checkout --quiet master
|
||||
git pull --quiet origin
|
||||
git checkout "v$ZMQ_VERSION"
|
||||
rm -f configure
|
||||
fi
|
||||
if test ! -e configure; then
|
||||
echo "Generating libzmq configure script"
|
||||
./autogen.sh
|
||||
fi
|
||||
cd ..
|
||||
case "${host_os}" in
|
||||
*darwin*)
|
||||
;;
|
||||
*mingw*|*msys*|*cygwin*)
|
||||
export CXXFLAGS="-static-libgcc -static-libstdc++ $CXXFLAGS"
|
||||
# Its necessary to pass these to the linker directly since libtool
|
||||
# won't build emacs-zmq as a dynamic module otherwise on Windows.
|
||||
export LDFLAGS="-Wl,-l:libstdc++.a -Wl,-l:libgcc.a -Wl,-lws2_32 -Wl,-liphlpapi $LDFLAGS"
|
||||
ON_WINDOWS=yes
|
||||
;;
|
||||
*)
|
||||
# Assume GCC compatible compiler
|
||||
# TODO: Actually check for this
|
||||
# Prevent dynamic linkage of libzmq dependencies
|
||||
#
|
||||
# PIC is needed since we are most likely building libzmq
|
||||
# statically, but would like to link it to the dynamic emacs-zmq
|
||||
# library. GCC needs to have this explicitly specified.
|
||||
#
|
||||
# The -fPIC for CFLAGS is needed even though emacs-zmq is already a
|
||||
# dynamic library since libzmq comes packaged with tweetnacl which
|
||||
# is a C library and it builds that by default.
|
||||
export CXXFLAGS="-fPIC -static-libgcc -static-libstdc++ $CXXFLAGS"
|
||||
export CFLAGS="-fPIC $CFLAGS"
|
||||
export LDFLAGS="-Wl,-l:libstdc++.a -Wl,-l:libgcc.a $LDFLAGS"
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(WINDOWS, [test "x$ON_WINDOWS" != x])
|
||||
AM_CONDITIONAL(ZMQ_BUILD_LOCALLY, [test "x$ZMQ_BUILD_LOCALLY" != x])
|
||||
if test "x$ZMQ_BUILD_LOCALLY" != x; then
|
||||
MAYBE_LIBZMQ=libzmq
|
||||
else
|
||||
MAYBE_LIBZMQ=
|
||||
fi
|
||||
AC_SUBST([MAYBE_LIBZMQ])
|
||||
|
||||
MODULE_EXT="`emacs -Q -batch --eval '(princ module-file-suffix)'`"
|
||||
AC_SUBST([MODULE_EXT])
|
||||
|
||||
LT_INIT([win32-dll shared disable-static])
|
||||
AC_CONFIG_FILES([Makefile])
|
||||
AC_OUTPUT
|
||||
@@ -0,0 +1,207 @@
|
||||
#include "core.h"
|
||||
|
||||
#define EZMQ_DEFCONST(sym, val) \
|
||||
args[1] = INTERN(sym); args[2] = INT(val); \
|
||||
list = FUNCALL(Qlist, 3, args); \
|
||||
FUNCALL(Qeval, 1, &list);
|
||||
|
||||
// Automatically generated
|
||||
void
|
||||
ezmq_expose_constants()
|
||||
{
|
||||
emacs_value args[3];
|
||||
emacs_value list;
|
||||
emacs_value Qeval = INTERN("eval");
|
||||
args[0] = INTERN("defconst");
|
||||
EZMQ_DEFCONST("zmq-AFFINITY", ZMQ_AFFINITY);
|
||||
EZMQ_DEFCONST("zmq-BACKLOG", ZMQ_BACKLOG);
|
||||
EZMQ_DEFCONST("zmq-BINDTODEVICE", ZMQ_BINDTODEVICE);
|
||||
EZMQ_DEFCONST("zmq-BLOCKY", ZMQ_BLOCKY);
|
||||
/* EZMQ_DEFCONST("zmq-BUILD-DRAFT-API", ZMQ_BUILD_DRAFT_API); */
|
||||
EZMQ_DEFCONST("zmq-CLIENT", ZMQ_CLIENT);
|
||||
EZMQ_DEFCONST("zmq-CONFLATE", ZMQ_CONFLATE);
|
||||
EZMQ_DEFCONST("zmq-CONNECT-RID", ZMQ_CONNECT_RID);
|
||||
EZMQ_DEFCONST("zmq-CONNECT-ROUTING-ID", ZMQ_CONNECT_ROUTING_ID);
|
||||
EZMQ_DEFCONST("zmq-CONNECT-TIMEOUT", ZMQ_CONNECT_TIMEOUT);
|
||||
EZMQ_DEFCONST("zmq-CURVE", ZMQ_CURVE);
|
||||
EZMQ_DEFCONST("zmq-CURVE-PUBLICKEY", ZMQ_CURVE_PUBLICKEY);
|
||||
EZMQ_DEFCONST("zmq-CURVE-SECRETKEY", ZMQ_CURVE_SECRETKEY);
|
||||
EZMQ_DEFCONST("zmq-CURVE-SERVER", ZMQ_CURVE_SERVER);
|
||||
EZMQ_DEFCONST("zmq-CURVE-SERVERKEY", ZMQ_CURVE_SERVERKEY);
|
||||
EZMQ_DEFCONST("zmq-DEALER", ZMQ_DEALER);
|
||||
EZMQ_DEFCONST("zmq-DEFINED-STDINT", ZMQ_DEFINED_STDINT);
|
||||
EZMQ_DEFCONST("zmq-DELAY-ATTACH-ON-CONNECT", ZMQ_DELAY_ATTACH_ON_CONNECT);
|
||||
EZMQ_DEFCONST("zmq-DGRAM", ZMQ_DGRAM);
|
||||
EZMQ_DEFCONST("zmq-DISH", ZMQ_DISH);
|
||||
EZMQ_DEFCONST("zmq-DONTWAIT", ZMQ_DONTWAIT);
|
||||
EZMQ_DEFCONST("zmq-EVENTS", ZMQ_EVENTS);
|
||||
EZMQ_DEFCONST("zmq-EVENT-ACCEPTED", ZMQ_EVENT_ACCEPTED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-ACCEPT-FAILED", ZMQ_EVENT_ACCEPT_FAILED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-ALL", ZMQ_EVENT_ALL);
|
||||
EZMQ_DEFCONST("zmq-EVENT-BIND-FAILED", ZMQ_EVENT_BIND_FAILED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-CLOSED", ZMQ_EVENT_CLOSED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-CLOSE-FAILED", ZMQ_EVENT_CLOSE_FAILED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-CONNECTED", ZMQ_EVENT_CONNECTED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-CONNECT-DELAYED", ZMQ_EVENT_CONNECT_DELAYED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-CONNECT-RETRIED", ZMQ_EVENT_CONNECT_RETRIED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-DISCONNECTED", ZMQ_EVENT_DISCONNECTED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-HANDSHAKE-FAILED-AUTH", ZMQ_EVENT_HANDSHAKE_FAILED_AUTH);
|
||||
EZMQ_DEFCONST("zmq-EVENT-HANDSHAKE-FAILED-NO-DETAIL", ZMQ_EVENT_HANDSHAKE_FAILED_NO_DETAIL);
|
||||
EZMQ_DEFCONST("zmq-EVENT-HANDSHAKE-FAILED-PROTOCOL", ZMQ_EVENT_HANDSHAKE_FAILED_PROTOCOL);
|
||||
EZMQ_DEFCONST("zmq-EVENT-HANDSHAKE-SUCCEEDED", ZMQ_EVENT_HANDSHAKE_SUCCEEDED);
|
||||
EZMQ_DEFCONST("zmq-EVENT-LISTENING", ZMQ_EVENT_LISTENING);
|
||||
EZMQ_DEFCONST("zmq-EVENT-MONITOR-STOPPED", ZMQ_EVENT_MONITOR_STOPPED);
|
||||
EZMQ_DEFCONST("zmq-FAIL-UNROUTABLE", ZMQ_FAIL_UNROUTABLE);
|
||||
EZMQ_DEFCONST("zmq-FD", ZMQ_FD);
|
||||
EZMQ_DEFCONST("zmq-FORWARDER", ZMQ_FORWARDER);
|
||||
EZMQ_DEFCONST("zmq-GATHER", ZMQ_GATHER);
|
||||
EZMQ_DEFCONST("zmq-GROUP-MAX-LENGTH", ZMQ_GROUP_MAX_LENGTH);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI", ZMQ_GSSAPI);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-NT-HOSTBASED", ZMQ_GSSAPI_NT_HOSTBASED);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-NT-KRB5-PRINCIPAL", ZMQ_GSSAPI_NT_KRB5_PRINCIPAL);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-NT-USER-NAME", ZMQ_GSSAPI_NT_USER_NAME);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-PLAINTEXT", ZMQ_GSSAPI_PLAINTEXT);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-PRINCIPAL", ZMQ_GSSAPI_PRINCIPAL);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-PRINCIPAL-NAMETYPE", ZMQ_GSSAPI_PRINCIPAL_NAMETYPE);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-SERVER", ZMQ_GSSAPI_SERVER);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-SERVICE-PRINCIPAL", ZMQ_GSSAPI_SERVICE_PRINCIPAL);
|
||||
EZMQ_DEFCONST("zmq-GSSAPI-SERVICE-PRINCIPAL-NAMETYPE", ZMQ_GSSAPI_SERVICE_PRINCIPAL_NAMETYPE);
|
||||
EZMQ_DEFCONST("zmq-HANDSHAKE-IVL", ZMQ_HANDSHAKE_IVL);
|
||||
EZMQ_DEFCONST("zmq-HAS-CAPABILITIES", ZMQ_HAS_CAPABILITIES);
|
||||
EZMQ_DEFCONST("zmq-HAUSNUMERO", ZMQ_HAUSNUMERO);
|
||||
// Use `zmq-has'
|
||||
/* EZMQ_DEFCONST("zmq-HAVE-POLLER", ZMQ_HAVE_POLLER); */
|
||||
/* EZMQ_DEFCONST("zmq-HAVE-TIMERS", ZMQ_HAVE_TIMERS); */
|
||||
EZMQ_DEFCONST("zmq-HEARTBEAT-IVL", ZMQ_HEARTBEAT_IVL);
|
||||
EZMQ_DEFCONST("zmq-HEARTBEAT-TIMEOUT", ZMQ_HEARTBEAT_TIMEOUT);
|
||||
EZMQ_DEFCONST("zmq-HEARTBEAT-TTL", ZMQ_HEARTBEAT_TTL);
|
||||
EZMQ_DEFCONST("zmq-IDENTITY", ZMQ_IDENTITY);
|
||||
EZMQ_DEFCONST("zmq-IMMEDIATE", ZMQ_IMMEDIATE);
|
||||
EZMQ_DEFCONST("zmq-INVERT-MATCHING", ZMQ_INVERT_MATCHING);
|
||||
EZMQ_DEFCONST("zmq-IO-THREADS", ZMQ_IO_THREADS);
|
||||
EZMQ_DEFCONST("zmq-IO-THREADS-DFLT", ZMQ_IO_THREADS_DFLT);
|
||||
EZMQ_DEFCONST("zmq-IPC-FILTER-GID", ZMQ_IPC_FILTER_GID);
|
||||
EZMQ_DEFCONST("zmq-IPC-FILTER-PID", ZMQ_IPC_FILTER_PID);
|
||||
EZMQ_DEFCONST("zmq-IPC-FILTER-UID", ZMQ_IPC_FILTER_UID);
|
||||
EZMQ_DEFCONST("zmq-IPV4ONLY", ZMQ_IPV4ONLY);
|
||||
EZMQ_DEFCONST("zmq-IPV6", ZMQ_IPV6);
|
||||
EZMQ_DEFCONST("zmq-LAST-ENDPOINT", ZMQ_LAST_ENDPOINT);
|
||||
EZMQ_DEFCONST("zmq-LINGER", ZMQ_LINGER);
|
||||
EZMQ_DEFCONST("zmq-MAXMSGSIZE", ZMQ_MAXMSGSIZE);
|
||||
EZMQ_DEFCONST("zmq-MAX-MSGSZ", ZMQ_MAX_MSGSZ);
|
||||
EZMQ_DEFCONST("zmq-MAX-SOCKETS", ZMQ_MAX_SOCKETS);
|
||||
EZMQ_DEFCONST("zmq-MAX-SOCKETS-DFLT", ZMQ_MAX_SOCKETS_DFLT);
|
||||
EZMQ_DEFCONST("zmq-MECHANISM", ZMQ_MECHANISM);
|
||||
EZMQ_DEFCONST("zmq-MORE", ZMQ_MORE);
|
||||
// See `zmq-message-property' in Emacs
|
||||
/* EZMQ_DEFCONST("zmq-MSG-PROPERTY-PEER-ADDRESS", ZMQ_MSG_PROPERTY_PEER_ADDRESS); */
|
||||
/* EZMQ_DEFCONST("zmq-MSG-PROPERTY-ROUTING-ID", ZMQ_MSG_PROPERTY_ROUTING_ID); */
|
||||
/* EZMQ_DEFCONST("zmq-MSG-PROPERTY-SOCKET-TYPE", ZMQ_MSG_PROPERTY_SOCKET_TYPE); */
|
||||
/* EZMQ_DEFCONST("zmq-MSG-PROPERTY-USER-ID", ZMQ_MSG_PROPERTY_USER_ID); */
|
||||
EZMQ_DEFCONST("zmq-MSG-T-SIZE", ZMQ_MSG_T_SIZE);
|
||||
EZMQ_DEFCONST("zmq-MULTICAST-HOPS", ZMQ_MULTICAST_HOPS);
|
||||
EZMQ_DEFCONST("zmq-MULTICAST-MAXTPDU", ZMQ_MULTICAST_MAXTPDU);
|
||||
EZMQ_DEFCONST("zmq-NOBLOCK", ZMQ_NOBLOCK);
|
||||
EZMQ_DEFCONST("zmq-NULL", ZMQ_NULL);
|
||||
EZMQ_DEFCONST("zmq-PAIR", ZMQ_PAIR);
|
||||
EZMQ_DEFCONST("zmq-PLAIN", ZMQ_PLAIN);
|
||||
EZMQ_DEFCONST("zmq-PLAIN-PASSWORD", ZMQ_PLAIN_PASSWORD);
|
||||
EZMQ_DEFCONST("zmq-PLAIN-SERVER", ZMQ_PLAIN_SERVER);
|
||||
EZMQ_DEFCONST("zmq-PLAIN-USERNAME", ZMQ_PLAIN_USERNAME);
|
||||
EZMQ_DEFCONST("zmq-POLLERR", ZMQ_POLLERR);
|
||||
EZMQ_DEFCONST("zmq-POLLIN", ZMQ_POLLIN);
|
||||
EZMQ_DEFCONST("zmq-POLLITEMS-DFLT", ZMQ_POLLITEMS_DFLT);
|
||||
EZMQ_DEFCONST("zmq-POLLOUT", ZMQ_POLLOUT);
|
||||
EZMQ_DEFCONST("zmq-POLLPRI", ZMQ_POLLPRI);
|
||||
EZMQ_DEFCONST("zmq-PROBE-ROUTER", ZMQ_PROBE_ROUTER);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZAP-BAD-REQUEST-ID", ZMQ_PROTOCOL_ERROR_ZAP_BAD_REQUEST_ID);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZAP-INVALID-METADATA", ZMQ_PROTOCOL_ERROR_ZAP_INVALID_METADATA);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZAP-INVALID-STATUS-CODE", ZMQ_PROTOCOL_ERROR_ZAP_INVALID_STATUS_CODE);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZAP-MALFORMED-REPLY", ZMQ_PROTOCOL_ERROR_ZAP_MALFORMED_REPLY);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZAP-UNSPECIFIED", ZMQ_PROTOCOL_ERROR_ZAP_UNSPECIFIED);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-CRYPTOGRAPHIC", ZMQ_PROTOCOL_ERROR_ZMTP_CRYPTOGRAPHIC);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-INVALID-METADATA", ZMQ_PROTOCOL_ERROR_ZMTP_INVALID_METADATA);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-INVALID-SEQUENCE", ZMQ_PROTOCOL_ERROR_ZMTP_INVALID_SEQUENCE);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-KEY-EXCHANGE", ZMQ_PROTOCOL_ERROR_ZMTP_KEY_EXCHANGE);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-ERROR", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_ERROR);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-HELLO", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_HELLO);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-INITIATE", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_INITIATE);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-MESSAGE", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_MESSAGE);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-READY", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_READY);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-UNSPECIFIED", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_UNSPECIFIED);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MALFORMED-COMMAND-WELCOME", ZMQ_PROTOCOL_ERROR_ZMTP_MALFORMED_COMMAND_WELCOME);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-MECHANISM-MISMATCH", ZMQ_PROTOCOL_ERROR_ZMTP_MECHANISM_MISMATCH);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-UNEXPECTED-COMMAND", ZMQ_PROTOCOL_ERROR_ZMTP_UNEXPECTED_COMMAND);
|
||||
EZMQ_DEFCONST("zmq-PROTOCOL-ERROR-ZMTP-UNSPECIFIED", ZMQ_PROTOCOL_ERROR_ZMTP_UNSPECIFIED);
|
||||
EZMQ_DEFCONST("zmq-PUB", ZMQ_PUB);
|
||||
EZMQ_DEFCONST("zmq-PULL", ZMQ_PULL);
|
||||
EZMQ_DEFCONST("zmq-PUSH", ZMQ_PUSH);
|
||||
EZMQ_DEFCONST("zmq-QUEUE", ZMQ_QUEUE);
|
||||
EZMQ_DEFCONST("zmq-RADIO", ZMQ_RADIO);
|
||||
EZMQ_DEFCONST("zmq-RATE", ZMQ_RATE);
|
||||
EZMQ_DEFCONST("zmq-RCVBUF", ZMQ_RCVBUF);
|
||||
EZMQ_DEFCONST("zmq-RCVHWM", ZMQ_RCVHWM);
|
||||
EZMQ_DEFCONST("zmq-RCVMORE", ZMQ_RCVMORE);
|
||||
EZMQ_DEFCONST("zmq-RCVTIMEO", ZMQ_RCVTIMEO);
|
||||
EZMQ_DEFCONST("zmq-RECONNECT-IVL", ZMQ_RECONNECT_IVL);
|
||||
EZMQ_DEFCONST("zmq-RECONNECT-IVL-MAX", ZMQ_RECONNECT_IVL_MAX);
|
||||
EZMQ_DEFCONST("zmq-RECOVERY-IVL", ZMQ_RECOVERY_IVL);
|
||||
EZMQ_DEFCONST("zmq-REP", ZMQ_REP);
|
||||
EZMQ_DEFCONST("zmq-REQ", ZMQ_REQ);
|
||||
EZMQ_DEFCONST("zmq-REQ-CORRELATE", ZMQ_REQ_CORRELATE);
|
||||
EZMQ_DEFCONST("zmq-REQ-RELAXED", ZMQ_REQ_RELAXED);
|
||||
EZMQ_DEFCONST("zmq-ROUTER", ZMQ_ROUTER);
|
||||
EZMQ_DEFCONST("zmq-ROUTER-BEHAVIOR", ZMQ_ROUTER_BEHAVIOR);
|
||||
EZMQ_DEFCONST("zmq-ROUTER-HANDOVER", ZMQ_ROUTER_HANDOVER);
|
||||
EZMQ_DEFCONST("zmq-ROUTER-MANDATORY", ZMQ_ROUTER_MANDATORY);
|
||||
EZMQ_DEFCONST("zmq-ROUTER-RAW", ZMQ_ROUTER_RAW);
|
||||
EZMQ_DEFCONST("zmq-ROUTING-ID", ZMQ_ROUTING_ID);
|
||||
EZMQ_DEFCONST("zmq-SCATTER", ZMQ_SCATTER);
|
||||
EZMQ_DEFCONST("zmq-SERVER", ZMQ_SERVER);
|
||||
EZMQ_DEFCONST("zmq-SHARED", ZMQ_SHARED);
|
||||
EZMQ_DEFCONST("zmq-SNDBUF", ZMQ_SNDBUF);
|
||||
EZMQ_DEFCONST("zmq-SNDHWM", ZMQ_SNDHWM);
|
||||
EZMQ_DEFCONST("zmq-SNDMORE", ZMQ_SNDMORE);
|
||||
EZMQ_DEFCONST("zmq-SNDTIMEO", ZMQ_SNDTIMEO);
|
||||
EZMQ_DEFCONST("zmq-SOCKET-LIMIT", ZMQ_SOCKET_LIMIT);
|
||||
EZMQ_DEFCONST("zmq-SOCKS-PROXY", ZMQ_SOCKS_PROXY);
|
||||
EZMQ_DEFCONST("zmq-SRCFD", ZMQ_SRCFD);
|
||||
EZMQ_DEFCONST("zmq-STREAM", ZMQ_STREAM);
|
||||
EZMQ_DEFCONST("zmq-STREAMER", ZMQ_STREAMER);
|
||||
EZMQ_DEFCONST("zmq-STREAM-NOTIFY", ZMQ_STREAM_NOTIFY);
|
||||
EZMQ_DEFCONST("zmq-SUB", ZMQ_SUB);
|
||||
EZMQ_DEFCONST("zmq-SUBSCRIBE", ZMQ_SUBSCRIBE);
|
||||
EZMQ_DEFCONST("zmq-TCP-ACCEPT-FILTER", ZMQ_TCP_ACCEPT_FILTER);
|
||||
EZMQ_DEFCONST("zmq-TCP-KEEPALIVE", ZMQ_TCP_KEEPALIVE);
|
||||
EZMQ_DEFCONST("zmq-TCP-KEEPALIVE-CNT", ZMQ_TCP_KEEPALIVE_CNT);
|
||||
EZMQ_DEFCONST("zmq-TCP-KEEPALIVE-IDLE", ZMQ_TCP_KEEPALIVE_IDLE);
|
||||
EZMQ_DEFCONST("zmq-TCP-KEEPALIVE-INTVL", ZMQ_TCP_KEEPALIVE_INTVL);
|
||||
EZMQ_DEFCONST("zmq-TCP-MAXRT", ZMQ_TCP_MAXRT);
|
||||
EZMQ_DEFCONST("zmq-THREAD-AFFINITY-CPU-ADD", ZMQ_THREAD_AFFINITY_CPU_ADD);
|
||||
EZMQ_DEFCONST("zmq-THREAD-AFFINITY-CPU-REMOVE", ZMQ_THREAD_AFFINITY_CPU_REMOVE);
|
||||
EZMQ_DEFCONST("zmq-THREAD-NAME-PREFIX", ZMQ_THREAD_NAME_PREFIX);
|
||||
EZMQ_DEFCONST("zmq-THREAD-PRIORITY", ZMQ_THREAD_PRIORITY);
|
||||
EZMQ_DEFCONST("zmq-THREAD-PRIORITY-DFLT", ZMQ_THREAD_PRIORITY_DFLT);
|
||||
EZMQ_DEFCONST("zmq-THREAD-SAFE", ZMQ_THREAD_SAFE);
|
||||
EZMQ_DEFCONST("zmq-THREAD-SCHED-POLICY", ZMQ_THREAD_SCHED_POLICY);
|
||||
EZMQ_DEFCONST("zmq-THREAD-SCHED-POLICY-DFLT", ZMQ_THREAD_SCHED_POLICY_DFLT);
|
||||
EZMQ_DEFCONST("zmq-TOS", ZMQ_TOS);
|
||||
EZMQ_DEFCONST("zmq-TYPE", ZMQ_TYPE);
|
||||
EZMQ_DEFCONST("zmq-UNSUBSCRIBE", ZMQ_UNSUBSCRIBE);
|
||||
EZMQ_DEFCONST("zmq-USE-FD", ZMQ_USE_FD);
|
||||
EZMQ_DEFCONST("zmq-VMCI-BUFFER-MAX-SIZE", ZMQ_VMCI_BUFFER_MAX_SIZE);
|
||||
EZMQ_DEFCONST("zmq-VMCI-BUFFER-MIN-SIZE", ZMQ_VMCI_BUFFER_MIN_SIZE);
|
||||
EZMQ_DEFCONST("zmq-VMCI-BUFFER-SIZE", ZMQ_VMCI_BUFFER_SIZE);
|
||||
EZMQ_DEFCONST("zmq-VMCI-CONNECT-TIMEOUT", ZMQ_VMCI_CONNECT_TIMEOUT);
|
||||
EZMQ_DEFCONST("zmq-XPUB", ZMQ_XPUB);
|
||||
EZMQ_DEFCONST("zmq-XPUB-MANUAL", ZMQ_XPUB_MANUAL);
|
||||
EZMQ_DEFCONST("zmq-XPUB-NODROP", ZMQ_XPUB_NODROP);
|
||||
EZMQ_DEFCONST("zmq-XPUB-VERBOSE", ZMQ_XPUB_VERBOSE);
|
||||
EZMQ_DEFCONST("zmq-XPUB-VERBOSER", ZMQ_XPUB_VERBOSER);
|
||||
EZMQ_DEFCONST("zmq-XPUB-WELCOME-MSG", ZMQ_XPUB_WELCOME_MSG);
|
||||
EZMQ_DEFCONST("zmq-XREP", ZMQ_XREP);
|
||||
EZMQ_DEFCONST("zmq-XREQ", ZMQ_XREQ);
|
||||
EZMQ_DEFCONST("zmq-XSUB", ZMQ_XSUB);
|
||||
EZMQ_DEFCONST("zmq-ZAP-DOMAIN", ZMQ_ZAP_DOMAIN);
|
||||
EZMQ_DEFCONST("zmq-ZAP-ENFORCE-DOMAIN", ZMQ_ZAP_ENFORCE_DOMAIN);
|
||||
}
|
||||
@@ -0,0 +1,63 @@
|
||||
#include "context.h"
|
||||
|
||||
EZMQ_DOC(ezmq_context, "", "Create a new context.");
|
||||
emacs_value
|
||||
ezmq_context(void)
|
||||
{
|
||||
void *ctx = zmq_ctx_new();
|
||||
EZMQ_CHECK_NULL_ERROR(ctx);
|
||||
ezmq_debug("ezmq_context()\n");
|
||||
return ezmq_new_obj_ptr(ezmq_new_obj(EZMQ_CONTEXT, ctx));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_ctx_set, "CONTEXT OPTION VALUE", "Set a CONTEXT OPTION to VALUE.");
|
||||
emacs_value
|
||||
ezmq_ctx_set(emacs_value econtext, emacs_value eoption, emacs_value evalue)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(context, EZMQ_CONTEXT, econtext);
|
||||
EZMQ_EXTRACT_INT(option, eoption);
|
||||
if(option == ZMQ_BLOCKY || option == ZMQ_IPV6)
|
||||
EZMQ_CHECK_ERROR(zmq_ctx_set(context->obj, option, (int)!NILP(evalue)));
|
||||
else {
|
||||
EZMQ_EXTRACT_INT(value, evalue);
|
||||
EZMQ_CHECK_ERROR(zmq_ctx_set(context->obj, option, value));
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_ctx_get, "CONTEXT OPTION", "Get a CONTEXT OPTION.");
|
||||
emacs_value
|
||||
ezmq_ctx_get(emacs_value econtext, emacs_value eoption)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
EZMQ_EXTRACT_OBJ(context, EZMQ_CONTEXT, econtext);
|
||||
EZMQ_EXTRACT_INT(option, eoption);
|
||||
|
||||
int val = zmq_ctx_get(context->obj, option);
|
||||
EZMQ_CHECK_ERROR(val);
|
||||
if(option == ZMQ_BLOCKY || option == ZMQ_IPV6) {
|
||||
if(val) retval = Qt;
|
||||
}
|
||||
else
|
||||
retval = INT(val);
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_ctx_shutdown, "CONTEXT", "Shutdown CONTEXT.");
|
||||
emacs_value
|
||||
ezmq_ctx_shutdown(emacs_value econtext)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(context, EZMQ_CONTEXT, econtext);
|
||||
EZMQ_CHECK_ERROR(zmq_ctx_shutdown(context->obj));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_ctx_term, "CONTEXT", "Terminate CONTEXT.");
|
||||
emacs_value
|
||||
ezmq_ctx_term(emacs_value econtext)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(context, EZMQ_CONTEXT, econtext);
|
||||
EZMQ_CHECK_ERROR(zmq_ctx_term(context->obj));
|
||||
return Qnil;
|
||||
}
|
||||
@@ -0,0 +1,13 @@
|
||||
|
||||
#ifndef __CONTEXT_H__
|
||||
#define __CONTEXT_H__
|
||||
|
||||
#include "core.h"
|
||||
|
||||
EZMQ_FUN(ezmq_context, void);
|
||||
EZMQ_FUN(ezmq_ctx_set, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_ctx_get, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_ctx_shutdown, emacs_value);
|
||||
EZMQ_FUN(ezmq_ctx_term, emacs_value);
|
||||
|
||||
#endif /* __CONTEXT_H__ */
|
||||
@@ -0,0 +1,309 @@
|
||||
#include "core.h"
|
||||
#include <assert.h>
|
||||
|
||||
/**
|
||||
Linked list of global references to be freed eventually.
|
||||
*/
|
||||
typedef struct ezmq_globref_t {
|
||||
struct ezmq_globref_t *next;
|
||||
emacs_value val;
|
||||
} ezmq_globref_t;
|
||||
|
||||
static ezmq_globref_t *globrefs = NULL;
|
||||
|
||||
#define ERR_CASE(err) \
|
||||
case err: { \
|
||||
const char *msg = zmq_strerror(err); \
|
||||
ptrdiff_t len = (ptrdiff_t)strlen(msg); \
|
||||
ezmq_signal(INTERN("zmq-"#err), 1, STRING(msg, len)); \
|
||||
} \
|
||||
break;
|
||||
|
||||
void
|
||||
ezmq_signal_error()
|
||||
{
|
||||
int en = zmq_errno();
|
||||
switch(en) {
|
||||
ERR_CASE(EINVAL);
|
||||
ERR_CASE(EPROTONOSUPPORT);
|
||||
ERR_CASE(ENOCOMPATPROTO);
|
||||
ERR_CASE(EADDRINUSE);
|
||||
ERR_CASE(EADDRNOTAVAIL);
|
||||
ERR_CASE(ENODEV);
|
||||
ERR_CASE(ETERM);
|
||||
ERR_CASE(ENOTSOCK);
|
||||
ERR_CASE(EMTHREAD);
|
||||
ERR_CASE(EFAULT);
|
||||
ERR_CASE(EINTR);
|
||||
ERR_CASE(ENOTSUP);
|
||||
ERR_CASE(ENOENT);
|
||||
ERR_CASE(ENOMEM);
|
||||
ERR_CASE(EAGAIN);
|
||||
ERR_CASE(EFSM);
|
||||
ERR_CASE(EHOSTUNREACH);
|
||||
ERR_CASE(EMFILE);
|
||||
default: {
|
||||
const char *msg = zmq_strerror(zmq_errno());
|
||||
ptrdiff_t len = (ptrdiff_t)strlen(msg);
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, len));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#undef ERR_CASE
|
||||
|
||||
void *
|
||||
ezmq_malloc(size_t nbytes)
|
||||
{
|
||||
void *buf = NULL;
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
buf = (void *)malloc(nbytes);
|
||||
if(!buf) ezmq_signal_error();
|
||||
}
|
||||
return buf;
|
||||
}
|
||||
|
||||
static char const *
|
||||
ezmq_type_string(enum ezmq_obj_t type)
|
||||
{
|
||||
switch(type) {
|
||||
case EZMQ_CONTEXT:
|
||||
return "zmq-context";
|
||||
case EZMQ_SOCKET:
|
||||
return "zmq-socket";
|
||||
case EZMQ_MESSAGE:
|
||||
return "zmq-message";
|
||||
case EZMQ_POLLER:
|
||||
return "zmq-poller";
|
||||
default:
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
|
||||
static emacs_value
|
||||
ezmq_type_symbol(enum ezmq_obj_t type)
|
||||
{
|
||||
char const *str = ezmq_type_string(type);
|
||||
return str ? INTERN(str) : Qnil;
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_signal(emacs_value err, int nargs, ...)
|
||||
{
|
||||
va_list args;
|
||||
emacs_value data[nargs];
|
||||
va_start(args, nargs);
|
||||
int i;
|
||||
for(i = 0; i < nargs; i++) {
|
||||
data[i] = va_arg(args, emacs_value);
|
||||
}
|
||||
SIGNAL(err, FUNCALL(Qlist, nargs, data));
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
static void
|
||||
ezmq_wrong_object_type(ezmq_obj_t *obj, enum ezmq_obj_t expected)
|
||||
{
|
||||
ezmq_wrong_type_argument(ezmq_type_symbol(obj->type),
|
||||
1, ezmq_type_symbol(expected));
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_wrong_type_argument(emacs_value val, int nvalid, ...)
|
||||
{
|
||||
va_list args;
|
||||
va_start(args, nvalid);
|
||||
if(nvalid == 1) {
|
||||
SIGNAL(Qwrong_type_argument, LIST(2, val, va_arg(args, emacs_value)));
|
||||
} else if(nvalid > 1) {
|
||||
emacs_value options[nvalid + 1];
|
||||
options[0] = INTERN("or");
|
||||
int i;
|
||||
for(i = 1; i < nvalid + 1; i++) {
|
||||
options[i] = va_arg(args, emacs_value);
|
||||
}
|
||||
emacs_value options_list = FUNCALL(Qlist, nvalid + 1, options);
|
||||
SIGNAL(Qwrong_type_argument, LIST(2, val, options_list));
|
||||
} else {
|
||||
SIGNAL(Qwrong_type_argument, LIST(1, val));
|
||||
}
|
||||
va_end(args);
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_args_out_of_range(emacs_value val, emacs_value range)
|
||||
{
|
||||
SIGNAL(Qargs_out_of_range, LIST(2, val, range));
|
||||
}
|
||||
|
||||
int
|
||||
ezmq_obj_of_type(emacs_value val, enum ezmq_obj_t type)
|
||||
{
|
||||
ezmq_obj_t *obj = USER_PTR(val);
|
||||
if(!NONLOCAL_EXIT() &&
|
||||
USER_FINALIZER(val) == &ezmq_obj_finalizer &&
|
||||
obj->type == type) {
|
||||
return 1;
|
||||
} else {
|
||||
CLEAR_NONLOCAL_EXIT();
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
ezmq_obj_t *
|
||||
ezmq_extract_obj(enum ezmq_obj_t type, emacs_value val)
|
||||
{
|
||||
ezmq_obj_t *obj = USER_PTR(val);
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
if(USER_FINALIZER(val) == &ezmq_obj_finalizer) {
|
||||
if(obj->type != type) {
|
||||
ezmq_wrong_object_type(obj, type);
|
||||
} else if(type == EZMQ_SOCKET && obj->obj == NULL) {
|
||||
const char *msg = "Socket closed";
|
||||
ezmq_signal(INTERN("zmq-ENOTSOCK"), 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
} else {
|
||||
ezmq_wrong_type_argument(val, 1, ezmq_type_symbol(type));
|
||||
}
|
||||
}
|
||||
return obj;
|
||||
}
|
||||
|
||||
ezmq_obj_t *
|
||||
ezmq_new_obj(enum ezmq_obj_t type, void *obj)
|
||||
{
|
||||
ezmq_obj_t *eobj = ezmq_malloc(sizeof(*eobj));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
switch(type) {
|
||||
case EZMQ_MESSAGE:
|
||||
if(!obj) {
|
||||
obj = ezmq_malloc(sizeof(zmq_msg_t));
|
||||
if(!obj) {
|
||||
free(eobj);
|
||||
return NULL;
|
||||
}
|
||||
}
|
||||
break;
|
||||
default: break;
|
||||
}
|
||||
eobj->obj = obj;
|
||||
eobj->type = type;
|
||||
eobj->val = NULL;
|
||||
}
|
||||
return eobj;
|
||||
}
|
||||
|
||||
// TODO: Handle the case of multiple context objects, we
|
||||
// will need to join multiple threads at the end.
|
||||
void
|
||||
ezmq_obj_finalizer(void *ptr)
|
||||
{
|
||||
ezmq_obj_t *obj = (ezmq_obj_t *)ptr;
|
||||
|
||||
switch(obj->type) {
|
||||
case EZMQ_MESSAGE:
|
||||
zmq_msg_close(obj->obj);
|
||||
break;
|
||||
case EZMQ_SOCKET: {
|
||||
// If obj == NULL, zmq_close has already been called. See ezmq_close.
|
||||
if(obj->obj) {
|
||||
// http://zguide.zeromq.org/page:all#Making-a-Clean-Exit
|
||||
int opt = 0;
|
||||
zmq_setsockopt(obj->obj, ZMQ_LINGER, &opt, sizeof(opt));
|
||||
zmq_close(obj->obj);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case EZMQ_CONTEXT: {
|
||||
int max_tries = 3;
|
||||
int i = 0;
|
||||
// Since a socket holds a reference to the context that was used to
|
||||
// create it (see ezmq_socket), by the time a context is finalized, all
|
||||
// sockets of the context have already been closed and their LINGER
|
||||
// periods set to 0 so this context termination call should not fail
|
||||
// due to open sockets. The loop is here as a sanity check.
|
||||
while((zmq_ctx_term(obj->obj) == -1) && (zmq_errno() == EINTR) && i < max_tries)
|
||||
i += 1;
|
||||
break;
|
||||
}
|
||||
case EZMQ_POLLER:
|
||||
zmq_poller_destroy(&(obj->obj));
|
||||
break;
|
||||
}
|
||||
ezmq_free_obj(obj);
|
||||
}
|
||||
|
||||
emacs_value
|
||||
ezmq_new_obj_ptr(ezmq_obj_t *obj)
|
||||
{
|
||||
return env->make_user_ptr(env, &ezmq_obj_finalizer, obj);
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_free_obj(ezmq_obj_t *obj)
|
||||
{
|
||||
if(obj) {
|
||||
ezmq_debug("ezmq_free_obj(%s)\n", ezmq_type_string(obj->type));
|
||||
if(obj->type == EZMQ_MESSAGE) {
|
||||
free(obj->obj);
|
||||
}
|
||||
ezmq_push_globref(obj);
|
||||
free(obj);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_obj_set_val(ezmq_obj_t *obj, emacs_value val)
|
||||
{
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
ezmq_push_globref(obj);
|
||||
obj->val = val ? GLOBREF(val) : NULL;
|
||||
}
|
||||
}
|
||||
|
||||
emacs_value
|
||||
ezmq_obj_get_val(ezmq_obj_t *obj)
|
||||
{
|
||||
return obj->val ? obj->val : Qnil;
|
||||
}
|
||||
|
||||
void
|
||||
ezmq_push_globref(ezmq_obj_t *obj)
|
||||
{
|
||||
if(obj->val) {
|
||||
ezmq_debug("push globref\n");
|
||||
ezmq_globref_t *el = malloc(sizeof(*el));
|
||||
assert(el != NULL);
|
||||
el->next = globrefs;
|
||||
el->val = obj->val;
|
||||
globrefs = el;
|
||||
}
|
||||
}
|
||||
|
||||
emacs_value
|
||||
ezmq_pop_globref()
|
||||
{
|
||||
if(globrefs) {
|
||||
ezmq_debug("pop globref\n");
|
||||
ezmq_globref_t *el = globrefs;
|
||||
emacs_value val = globrefs->val;
|
||||
globrefs = globrefs->next;
|
||||
free(el);
|
||||
return val;
|
||||
} else
|
||||
return NULL;
|
||||
}
|
||||
|
||||
char *
|
||||
ezmq_copy_string(emacs_value str, ptrdiff_t *size)
|
||||
{
|
||||
*size = 0;
|
||||
ptrdiff_t sz = 1;
|
||||
if(!env->copy_string_contents(env, str, NULL, &sz)) return NULL;
|
||||
char *buf = ezmq_malloc(sz);
|
||||
env->copy_string_contents(env, str, buf, &sz);
|
||||
// The size returned by copy_string_contents contains the terminanting NULL
|
||||
// byte.
|
||||
if(size != NULL) *size = sz - 1;
|
||||
return buf;
|
||||
}
|
||||
@@ -0,0 +1,297 @@
|
||||
#ifndef __CORE_H__
|
||||
#define __CORE_H__
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <stdarg.h>
|
||||
#include <zmq.h>
|
||||
#include <stdbool.h>
|
||||
#include "emacs-module.h"
|
||||
|
||||
/**
|
||||
About what environment functions do when a non-local exit is pending, from
|
||||
http://phst.github.io/emacs-modules.html#when-a-nonlocal-exit-is-pending-module-functions-silently-do-nothing:
|
||||
|
||||
environment functions exhibit saturating behavior: once a nonlocal exit
|
||||
is pending for an environment, all environment functions called for that
|
||||
environment silently ignore all their arguments (except the environment
|
||||
pointer itself) and return an unspecified value.
|
||||
*/
|
||||
|
||||
#ifndef EZMQ_DEBUG
|
||||
#define EZMQ_DEBUG 0
|
||||
#endif
|
||||
|
||||
#define ezmq_debug(str, ...) if(EZMQ_DEBUG) fprintf(stderr, str, ##__VA_ARGS__)
|
||||
|
||||
/**
|
||||
Helper macros to aid in interacting with the Emacs environment. They all
|
||||
expect an implicit emacs_env variable named env to be defined in the calling
|
||||
environment of the macro.
|
||||
*/
|
||||
#define INTERN(val) env->intern(env, (val))
|
||||
|
||||
#define FUNCALL(fun, nargs, args) env->funcall(env, (fun), (nargs), (args))
|
||||
|
||||
#define CAR(list) FUNCALL(Qcar, 1, &(list))
|
||||
|
||||
#define CDR(list) FUNCALL(Qcdr, 1, &(list))
|
||||
|
||||
#define INT(i) env->make_integer(env, (i))
|
||||
|
||||
// Should only be used when i is guaranteed to be an integer, otherwise use
|
||||
// EZMQ_EXTRACT_INT
|
||||
#define EXTRACT_INT(i) env->extract_integer(env, (i))
|
||||
|
||||
#define STRING(str, len) env->make_string(env, (str), (len))
|
||||
|
||||
#define LIST(count, ...) FUNCALL(Qlist, (count), ((emacs_value []){ __VA_ARGS__ }))
|
||||
|
||||
#define CONS(car, cdr) FUNCALL(Qcons, 2, ((emacs_value []){ (car), (cdr) }))
|
||||
|
||||
#define TYPE(val) env->type_of(env, (val))
|
||||
|
||||
#define USER_PTR(val) env->get_user_ptr(env, (val))
|
||||
|
||||
#define USER_FINALIZER(val) env->get_user_finalizer(env, (val))
|
||||
|
||||
#define EQ(a, b) env->eq(env, (a), (b))
|
||||
|
||||
#define NILP(a) !env->is_not_nil(env, (a))
|
||||
|
||||
#define EQUAL(a, b) EQ(FUNCALL(Qequal, 2, ((emacs_value []){ (a), (b) })), Qt)
|
||||
|
||||
#define LENGTH(list) env->extract_integer(env, FUNCALL(Qlength, 1, &(list)))
|
||||
|
||||
#define AREF(vec, i) env->vec_get(env, (vec), (i))
|
||||
|
||||
#define VEC_LENGTH(vec) env->vec_size(env, (vec))
|
||||
|
||||
#define GLOBREF(val) env->make_global_ref(env, (val))
|
||||
|
||||
#define FREE_GLOBREF(val) env->free_global_ref(env, (val))
|
||||
|
||||
#define NONLOCAL_EXIT() (env->non_local_exit_check(env) != emacs_funcall_exit_return)
|
||||
|
||||
#define CLEAR_NONLOCAL_EXIT() env->non_local_exit_clear(env)
|
||||
|
||||
#define SIGNAL(err, data) env->non_local_exit_signal(env, (err), (data))
|
||||
|
||||
/**
|
||||
EZMQ_EXTRACT_* macros transform the Lisp object representations to their
|
||||
corresponding C representations. If during the extraction an error is
|
||||
signaled, they immediately exit the function where the macro was expanded by
|
||||
returning NULL.
|
||||
*/
|
||||
|
||||
#define EZMQ_EXTRACT_INT(name, val) \
|
||||
intmax_t name = env->extract_integer(env, (val)); \
|
||||
do { \
|
||||
if(NONLOCAL_EXIT()) { \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define EZMQ_EXTRACT_OPTIONAL_INT(name, val) \
|
||||
intmax_t name = EQ((val), Qnil) ? 0 : \
|
||||
env->extract_integer(env, (val)); \
|
||||
do { \
|
||||
if(NONLOCAL_EXIT()) { \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define EZMQ_EXTRACT_OBJ(name, type, val) \
|
||||
ezmq_obj_t *name = ezmq_extract_obj(type, (val)); \
|
||||
if(NONLOCAL_EXIT()) return NULL \
|
||||
|
||||
#define EZMQ_EXTRACT_OPTIONAL_OBJ(name, type, val) \
|
||||
ezmq_obj_t *name = EQ((val), Qnil) ? NULL : \
|
||||
ezmq_extract_obj(type, (val)); \
|
||||
if(NONLOCAL_EXIT()) return NULL \
|
||||
|
||||
#define EZMQ_EXTRACT_STRING(name, len, val) \
|
||||
ptrdiff_t len = 0; \
|
||||
char *name = ezmq_copy_string((val), &len); \
|
||||
do { \
|
||||
if(NONLOCAL_EXIT()) { \
|
||||
return NULL; \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
/**
|
||||
The EZMQ_CHECK_* macros check that that expression passed as their argument
|
||||
evaluates to something other than -1 (EZMQ_CHECK_ERROR) or NULL
|
||||
(EZMQ_CHECK_NULL_ERROR). If they do evaluate to -1 or NULL, they signal an
|
||||
error. Note, the expressions passed as arguments will not be evaluated if a
|
||||
non-local exit is pending already.
|
||||
*/
|
||||
|
||||
#define EZMQ_CHECK_ERROR(expr) \
|
||||
do { \
|
||||
if(NONLOCAL_EXIT()) break; \
|
||||
int __retcode = (expr); \
|
||||
if(__retcode == -1) { \
|
||||
ezmq_signal_error(); \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define EZMQ_CHECK_NULL_ERROR(expr) \
|
||||
do { \
|
||||
if(NONLOCAL_EXIT()) break; \
|
||||
if((void *)(expr) == NULL) { \
|
||||
ezmq_signal_error(); \
|
||||
} \
|
||||
} while(0)
|
||||
|
||||
#define EZMQ_DOC(name, args, doc) \
|
||||
const char *__zmq_doc_##name = doc "\n\n(fn " args ")"
|
||||
|
||||
#define EZMQ_FUN(name, ...) \
|
||||
extern const char *__zmq_doc_##name; \
|
||||
extern emacs_value name(__VA_ARGS__)
|
||||
|
||||
enum ezmq_obj_t {
|
||||
EZMQ_CONTEXT = 0xe178c286,
|
||||
EZMQ_MESSAGE = 0xe178c286 + 2,
|
||||
EZMQ_SOCKET = 0xe178c286 + 4,
|
||||
EZMQ_POLLER = 0xe178c286 + 8
|
||||
};
|
||||
|
||||
typedef struct {
|
||||
enum ezmq_obj_t type;
|
||||
void *obj;
|
||||
// Extra object that can be stored, use ezmq_obj_get_val() and
|
||||
// ezmq_obj_set_val() to access it.
|
||||
emacs_value val;
|
||||
} ezmq_obj_t;
|
||||
|
||||
// Set to the current Emacs environment, see ezmq_dispatch
|
||||
extern emacs_env *env;
|
||||
|
||||
extern emacs_value Qzmq_error, Qt, Qnil, Qnth, Qlist,
|
||||
Qwrong_type_argument, Qargs_out_of_range,
|
||||
Qcons, Qstring, Qvector, Qcar, Qcdr, Qlength, Qinteger, Qequal,
|
||||
Qzmq_POLLIN, Qzmq_POLLPRI, Qzmq_POLLERR, Qzmq_POLLOUT,
|
||||
Izmq_POLLIN, Izmq_POLLPRI, Izmq_POLLERR, Izmq_POLLOUT;
|
||||
|
||||
/**
|
||||
Signal an Emacs error.
|
||||
ERR is the error symbol, the remaining arguments are used as the error data.
|
||||
*/
|
||||
extern void
|
||||
ezmq_signal(emacs_value err, int nargs, ...);
|
||||
|
||||
/**
|
||||
Signal an Emacs `wrong-type-argument` error.
|
||||
|
||||
VAL is the object with a wrong type, the remaining arguments should be the
|
||||
types that VAL should take.
|
||||
*/
|
||||
extern void
|
||||
ezmq_wrong_type_argument(emacs_value val, int nvalid, ...);
|
||||
|
||||
/**
|
||||
Signal an Emacs `args-out-of-range` error.
|
||||
VAL is the object whose range is out of bounds. RANGE is an object
|
||||
describing the bounds that are valid.
|
||||
*/
|
||||
extern void
|
||||
ezmq_args_out_of_range(emacs_value val, emacs_value range);
|
||||
|
||||
/**
|
||||
Signal an error created from the current value of zmq_errno().
|
||||
*/
|
||||
extern void
|
||||
ezmq_signal_error();
|
||||
|
||||
/**
|
||||
Create a new ezmq_obj with type and obj and returns a user-ptr to it. As a
|
||||
special case if type is EZMQ_MESSAGE and obj is NULL, allocate the required
|
||||
zmq_msg_t object. This is the normal way to create new ZMQ message objects.
|
||||
The environment is passed for the case when nno memory can be allocated, an
|
||||
error is signaled and this function will return NULL.
|
||||
*/
|
||||
extern emacs_value
|
||||
ezmq_new_obj_ptr(ezmq_obj_t *obj);
|
||||
|
||||
/**
|
||||
Allocate and return an ezmq_obj_t with TYPE and OBJ. Signal a non-local exit
|
||||
if anything goes wrong.
|
||||
*/
|
||||
extern ezmq_obj_t *
|
||||
ezmq_new_obj(enum ezmq_obj_t type, void *obj);
|
||||
|
||||
/**
|
||||
Free the memory used to wrap a ZMQ object. Note this only free's the memoery
|
||||
used by a ezmq_obj_t not the underlying object it points to. See
|
||||
ezmq_obj_finalizer for freeing up the resources used by the ZMQ objects.
|
||||
*/
|
||||
extern void
|
||||
ezmq_free_obj(ezmq_obj_t *obj);
|
||||
|
||||
/**
|
||||
Set the VAL field of OBJ.
|
||||
Un-reference any current value stored in OBJ, make a global reference to VAL
|
||||
and store in OBJ->val.
|
||||
*/
|
||||
extern void
|
||||
ezmq_obj_set_val(ezmq_obj_t *obj, emacs_value val);
|
||||
|
||||
/**
|
||||
Return the VAL field of OBJ.
|
||||
If OBJ's VAL field is empty, return Qnil.
|
||||
*/
|
||||
emacs_value
|
||||
ezmq_obj_get_val(ezmq_obj_t *obj);
|
||||
|
||||
/**
|
||||
Add OBJ->val to a stack of values to call FREE_GLOBREF() on next dispatch.
|
||||
Do this only if OBJ->val is not NULL. The global references are also cleaned
|
||||
up after every garbage collection in Emacs.
|
||||
*/
|
||||
extern void
|
||||
ezmq_push_globref(ezmq_obj_t *obj);
|
||||
|
||||
/**
|
||||
Remove a value from the stack of values pushed to by ezmq_push_globref()
|
||||
*/
|
||||
extern emacs_value
|
||||
ezmq_pop_globref();
|
||||
|
||||
/**
|
||||
Return 1 if Emacs VAL is a ZMQ object with TYPE, 0 otherwise.
|
||||
*/
|
||||
extern int
|
||||
ezmq_obj_of_type(emacs_value val, enum ezmq_obj_t type);
|
||||
|
||||
/**
|
||||
Extract an ezmq_obj_t from the Lisp object in OBJ. Signal a non-local exit
|
||||
if the extracted object doesn't match TYPE.
|
||||
*/
|
||||
extern ezmq_obj_t *
|
||||
ezmq_extract_obj(enum ezmq_obj_t type, emacs_value obj);
|
||||
|
||||
/**
|
||||
Cleanup resources of a ezmq_obj_t. Meant to be added as the object finalizer
|
||||
when wrapping ezmq_obj_t objects as a user_ptr.
|
||||
*/
|
||||
extern void
|
||||
ezmq_obj_finalizer(void *);
|
||||
|
||||
/**
|
||||
Similar to malloc, but signal an error if no memory could be allocated and
|
||||
do not attempt to allocate if a non-local exit is pending. In both cases,
|
||||
return NULL.
|
||||
*/
|
||||
extern void *
|
||||
ezmq_malloc(size_t nbytes);
|
||||
|
||||
/**
|
||||
Copy and return a pointer to an Emacs string. The caller is responsible for
|
||||
freeing the memory returned.
|
||||
*/
|
||||
extern char *
|
||||
ezmq_copy_string(emacs_value str, ptrdiff_t *size);
|
||||
|
||||
#endif /* __CORE_H__ */
|
||||
Executable
+791
@@ -0,0 +1,791 @@
|
||||
#! /bin/sh
|
||||
# depcomp - compile a program generating dependencies as side-effects
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1999-2021 Free Software Foundation, Inc.
|
||||
|
||||
# This program 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.
|
||||
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
|
||||
|
||||
case $1 in
|
||||
'')
|
||||
echo "$0: No command. Try '$0 --help' for more information." 1>&2
|
||||
exit 1;
|
||||
;;
|
||||
-h | --h*)
|
||||
cat <<\EOF
|
||||
Usage: depcomp [--help] [--version] PROGRAM [ARGS]
|
||||
|
||||
Run PROGRAMS ARGS to compile a file, generating dependencies
|
||||
as side-effects.
|
||||
|
||||
Environment variables:
|
||||
depmode Dependency tracking mode.
|
||||
source Source file read by 'PROGRAMS ARGS'.
|
||||
object Object file output by 'PROGRAMS ARGS'.
|
||||
DEPDIR directory where to store dependencies.
|
||||
depfile Dependency file to output.
|
||||
tmpdepfile Temporary file to use when outputting dependencies.
|
||||
libtool Whether libtool is used (yes/no).
|
||||
|
||||
Report bugs to <bug-automake@gnu.org>.
|
||||
EOF
|
||||
exit $?
|
||||
;;
|
||||
-v | --v*)
|
||||
echo "depcomp $scriptversion"
|
||||
exit $?
|
||||
;;
|
||||
esac
|
||||
|
||||
# Get the directory component of the given path, and save it in the
|
||||
# global variables '$dir'. Note that this directory component will
|
||||
# be either empty or ending with a '/' character. This is deliberate.
|
||||
set_dir_from ()
|
||||
{
|
||||
case $1 in
|
||||
*/*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;;
|
||||
*) dir=;;
|
||||
esac
|
||||
}
|
||||
|
||||
# Get the suffix-stripped basename of the given path, and save it the
|
||||
# global variable '$base'.
|
||||
set_base_from ()
|
||||
{
|
||||
base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'`
|
||||
}
|
||||
|
||||
# If no dependency file was actually created by the compiler invocation,
|
||||
# we still have to create a dummy depfile, to avoid errors with the
|
||||
# Makefile "include basename.Plo" scheme.
|
||||
make_dummy_depfile ()
|
||||
{
|
||||
echo "#dummy" > "$depfile"
|
||||
}
|
||||
|
||||
# Factor out some common post-processing of the generated depfile.
|
||||
# Requires the auxiliary global variable '$tmpdepfile' to be set.
|
||||
aix_post_process_depfile ()
|
||||
{
|
||||
# If the compiler actually managed to produce a dependency file,
|
||||
# post-process it.
|
||||
if test -f "$tmpdepfile"; then
|
||||
# Each line is of the form 'foo.o: dependency.h'.
|
||||
# Do two passes, one to just change these to
|
||||
# $object: dependency.h
|
||||
# and one to simply output
|
||||
# dependency.h:
|
||||
# which is needed to avoid the deleted-header problem.
|
||||
{ sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile"
|
||||
sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile"
|
||||
} > "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
}
|
||||
|
||||
# A tabulation character.
|
||||
tab=' '
|
||||
# A newline character.
|
||||
nl='
|
||||
'
|
||||
# Character ranges might be problematic outside the C locale.
|
||||
# These definitions help.
|
||||
upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ
|
||||
lower=abcdefghijklmnopqrstuvwxyz
|
||||
digits=0123456789
|
||||
alpha=${upper}${lower}
|
||||
|
||||
if test -z "$depmode" || test -z "$source" || test -z "$object"; then
|
||||
echo "depcomp: Variables source, object and depmode must be set" 1>&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
|
||||
depfile=${depfile-`echo "$object" |
|
||||
sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
|
||||
tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
|
||||
|
||||
rm -f "$tmpdepfile"
|
||||
|
||||
# Avoid interferences from the environment.
|
||||
gccflag= dashmflag=
|
||||
|
||||
# Some modes work just like other modes, but use different flags. We
|
||||
# parameterize here, but still list the modes in the big case below,
|
||||
# to make depend.m4 easier to write. Note that we *cannot* use a case
|
||||
# here, because this file can only contain one case statement.
|
||||
if test "$depmode" = hp; then
|
||||
# HP compiler uses -M and no extra arg.
|
||||
gccflag=-M
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
if test "$depmode" = dashXmstdout; then
|
||||
# This is just like dashmstdout with a different argument.
|
||||
dashmflag=-xM
|
||||
depmode=dashmstdout
|
||||
fi
|
||||
|
||||
cygpath_u="cygpath -u -f -"
|
||||
if test "$depmode" = msvcmsys; then
|
||||
# This is just like msvisualcpp but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvisualcpp
|
||||
fi
|
||||
|
||||
if test "$depmode" = msvc7msys; then
|
||||
# This is just like msvc7 but w/o cygpath translation.
|
||||
# Just convert the backslash-escaped backslashes to single forward
|
||||
# slashes to satisfy depend.m4
|
||||
cygpath_u='sed s,\\\\,/,g'
|
||||
depmode=msvc7
|
||||
fi
|
||||
|
||||
if test "$depmode" = xlc; then
|
||||
# IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information.
|
||||
gccflag=-qmakedep=gcc,-MF
|
||||
depmode=gcc
|
||||
fi
|
||||
|
||||
case "$depmode" in
|
||||
gcc3)
|
||||
## gcc 3 implements dependency tracking that does exactly what
|
||||
## we want. Yay! Note: for some reason libtool 1.4 doesn't like
|
||||
## it if -MD -MP comes after the -MF stuff. Hmm.
|
||||
## Unfortunately, FreeBSD c89 acceptance of flags depends upon
|
||||
## the command line argument order; so add the flags where they
|
||||
## appear in depend2.am. Note that the slowdown incurred here
|
||||
## affects only configure: in makefiles, %FASTDEP% shortcuts this.
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;;
|
||||
*) set fnord "$@" "$arg" ;;
|
||||
esac
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
done
|
||||
"$@"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
mv "$tmpdepfile" "$depfile"
|
||||
;;
|
||||
|
||||
gcc)
|
||||
## Note that this doesn't just cater to obsosete pre-3.x GCC compilers.
|
||||
## but also to in-use compilers like IMB xlc/xlC and the HP C compiler.
|
||||
## (see the conditional assignment to $gccflag above).
|
||||
## There are various ways to get dependency output from gcc. Here's
|
||||
## why we pick this rather obscure method:
|
||||
## - Don't want to use -MD because we'd like the dependencies to end
|
||||
## up in a subdir. Having to rename by hand is ugly.
|
||||
## (We might end up doing this anyway to support other compilers.)
|
||||
## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
|
||||
## -MM, not -M (despite what the docs say). Also, it might not be
|
||||
## supported by the other compilers which use the 'gcc' depmode.
|
||||
## - Using -M directly means running the compiler twice (even worse
|
||||
## than renaming).
|
||||
if test -z "$gccflag"; then
|
||||
gccflag=-MD,
|
||||
fi
|
||||
"$@" -Wp,"$gccflag$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The second -e expression handles DOS-style file names with drive
|
||||
# letters.
|
||||
sed -e 's/^[^:]*: / /' \
|
||||
-e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
|
||||
## This next piece of magic avoids the "deleted header file" problem.
|
||||
## The problem is that when a header file which appears in a .P file
|
||||
## is deleted, the dependency causes make to die (because there is
|
||||
## typically no way to rebuild the header). We avoid this by adding
|
||||
## dummy dependencies for each header file. Too bad gcc doesn't do
|
||||
## this for us directly.
|
||||
## Some versions of gcc put a space before the ':'. On the theory
|
||||
## that the space means something, we add a space to the output as
|
||||
## well. hp depmode also adds that space, but also prefixes the VPATH
|
||||
## to the object. Take care to not repeat it in the output.
|
||||
## Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
## correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
sgi)
|
||||
if test "$libtool" = yes; then
|
||||
"$@" "-Wp,-MDupdate,$tmpdepfile"
|
||||
else
|
||||
"$@" -MDupdate "$tmpdepfile"
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
|
||||
if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
|
||||
echo "$object : \\" > "$depfile"
|
||||
# Clip off the initial element (the dependent). Don't try to be
|
||||
# clever and replace this with sed code, as IRIX sed won't handle
|
||||
# lines with more than a fixed number of characters (4096 in
|
||||
# IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
|
||||
# the IRIX cc adds comments like '#:fec' to the end of the
|
||||
# dependency line.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \
|
||||
| tr "$nl" ' ' >> "$depfile"
|
||||
echo >> "$depfile"
|
||||
# The second pass generates a dummy entry for each header file.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
|
||||
>> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
xlc)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
aix)
|
||||
# The C for AIX Compiler uses -M and outputs the dependencies
|
||||
# in a .u file. In older versions, this file always lives in the
|
||||
# current directory. Also, the AIX compiler puts '$object:' at the
|
||||
# start of each line; $object doesn't have directory information.
|
||||
# Version 6 uses the directory in both cases.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$base.u
|
||||
tmpdepfile3=$dir.libs/$base.u
|
||||
"$@" -Wc,-M
|
||||
else
|
||||
tmpdepfile1=$dir$base.u
|
||||
tmpdepfile2=$dir$base.u
|
||||
tmpdepfile3=$dir$base.u
|
||||
"$@" -M
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
tcc)
|
||||
# tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26
|
||||
# FIXME: That version still under development at the moment of writing.
|
||||
# Make that this statement remains true also for stable, released
|
||||
# versions.
|
||||
# It will wrap lines (doesn't matter whether long or short) with a
|
||||
# trailing '\', as in:
|
||||
#
|
||||
# foo.o : \
|
||||
# foo.c \
|
||||
# foo.h \
|
||||
#
|
||||
# It will put a trailing '\' even on the last line, and will use leading
|
||||
# spaces rather than leading tabs (at least since its commit 0394caf7
|
||||
# "Emit spaces for -MD").
|
||||
"$@" -MD -MF "$tmpdepfile"
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each non-empty line is of the form 'foo.o : \' or ' dep.h \'.
|
||||
# We have to change lines of the first kind to '$object: \'.
|
||||
sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile"
|
||||
# And for each line of the second kind, we have to emit a 'dep.h:'
|
||||
# dummy dependency, to avoid the deleted-header problem.
|
||||
sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
## The order of this option in the case statement is important, since the
|
||||
## shell code in configure will try each of these formats in the order
|
||||
## listed in this file. A plain '-MD' option would be understood by many
|
||||
## compilers, so we must ensure this comes after the gcc and icc options.
|
||||
pgcc)
|
||||
# Portland's C compiler understands '-MD'.
|
||||
# Will always output deps to 'file.d' where file is the root name of the
|
||||
# source file under compilation, even if file resides in a subdirectory.
|
||||
# The object file name does not affect the name of the '.d' file.
|
||||
# pgcc 10.2 will output
|
||||
# foo.o: sub/foo.c sub/foo.h
|
||||
# and will wrap long lines using '\' :
|
||||
# foo.o: sub/foo.c ... \
|
||||
# sub/foo.h ... \
|
||||
# ...
|
||||
set_dir_from "$object"
|
||||
# Use the source, not the object, to determine the base name, since
|
||||
# that's sadly what pgcc will do too.
|
||||
set_base_from "$source"
|
||||
tmpdepfile=$base.d
|
||||
|
||||
# For projects that build the same source file twice into different object
|
||||
# files, the pgcc approach of using the *source* file root name can cause
|
||||
# problems in parallel builds. Use a locking strategy to avoid stomping on
|
||||
# the same $tmpdepfile.
|
||||
lockdir=$base.d-lock
|
||||
trap "
|
||||
echo '$0: caught signal, cleaning up...' >&2
|
||||
rmdir '$lockdir'
|
||||
exit 1
|
||||
" 1 2 13 15
|
||||
numtries=100
|
||||
i=$numtries
|
||||
while test $i -gt 0; do
|
||||
# mkdir is a portable test-and-set.
|
||||
if mkdir "$lockdir" 2>/dev/null; then
|
||||
# This process acquired the lock.
|
||||
"$@" -MD
|
||||
stat=$?
|
||||
# Release the lock.
|
||||
rmdir "$lockdir"
|
||||
break
|
||||
else
|
||||
# If the lock is being held by a different process, wait
|
||||
# until the winning process is done or we timeout.
|
||||
while test -d "$lockdir" && test $i -gt 0; do
|
||||
sleep 1
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
fi
|
||||
i=`expr $i - 1`
|
||||
done
|
||||
trap - 1 2 13 15
|
||||
if test $i -le 0; then
|
||||
echo "$0: failed to acquire lock after $numtries attempts" >&2
|
||||
echo "$0: check lockdir '$lockdir'" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
# Each line is of the form `foo.o: dependent.h',
|
||||
# or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
|
||||
# Do two passes, one to just change these to
|
||||
# `$object: dependent.h' and one to simply `dependent.h:'.
|
||||
sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
hp2)
|
||||
# The "hp" stanza above does not work with aCC (C++) and HP's ia64
|
||||
# compilers, which have integrated preprocessors. The correct option
|
||||
# to use with these is +Maked; it writes dependencies to a file named
|
||||
# 'foo.d', which lands next to the object file, wherever that
|
||||
# happens to be.
|
||||
# Much of this is similar to the tru64 case; see comments there.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
if test "$libtool" = yes; then
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir.libs/$base.d
|
||||
"$@" -Wc,+Maked
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
"$@" +Maked
|
||||
fi
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
if test -f "$tmpdepfile"; then
|
||||
sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile"
|
||||
# Add 'dependent.h:' lines.
|
||||
sed -ne '2,${
|
||||
s/^ *//
|
||||
s/ \\*$//
|
||||
s/$/:/
|
||||
p
|
||||
}' "$tmpdepfile" >> "$depfile"
|
||||
else
|
||||
make_dummy_depfile
|
||||
fi
|
||||
rm -f "$tmpdepfile" "$tmpdepfile2"
|
||||
;;
|
||||
|
||||
tru64)
|
||||
# The Tru64 compiler uses -MD to generate dependencies as a side
|
||||
# effect. 'cc -MD -o foo.o ...' puts the dependencies into 'foo.o.d'.
|
||||
# At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
|
||||
# dependencies in 'foo.d' instead, so we check for that too.
|
||||
# Subdirectories are respected.
|
||||
set_dir_from "$object"
|
||||
set_base_from "$object"
|
||||
|
||||
if test "$libtool" = yes; then
|
||||
# Libtool generates 2 separate objects for the 2 libraries. These
|
||||
# two compilations output dependencies in $dir.libs/$base.o.d and
|
||||
# in $dir$base.o.d. We have to check for both files, because
|
||||
# one of the two compilations can be disabled. We should prefer
|
||||
# $dir$base.o.d over $dir.libs/$base.o.d because the latter is
|
||||
# automatically cleaned when .libs/ is deleted, while ignoring
|
||||
# the former would cause a distcleancheck panic.
|
||||
tmpdepfile1=$dir$base.o.d # libtool 1.5
|
||||
tmpdepfile2=$dir.libs/$base.o.d # Likewise.
|
||||
tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504
|
||||
"$@" -Wc,-MD
|
||||
else
|
||||
tmpdepfile1=$dir$base.d
|
||||
tmpdepfile2=$dir$base.d
|
||||
tmpdepfile3=$dir$base.d
|
||||
"$@" -MD
|
||||
fi
|
||||
|
||||
stat=$?
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
exit $stat
|
||||
fi
|
||||
|
||||
for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3"
|
||||
do
|
||||
test -f "$tmpdepfile" && break
|
||||
done
|
||||
# Same post-processing that is required for AIX mode.
|
||||
aix_post_process_depfile
|
||||
;;
|
||||
|
||||
msvc7)
|
||||
if test "$libtool" = yes; then
|
||||
showIncludes=-Wc,-showIncludes
|
||||
else
|
||||
showIncludes=-showIncludes
|
||||
fi
|
||||
"$@" $showIncludes > "$tmpdepfile"
|
||||
stat=$?
|
||||
grep -v '^Note: including file: ' "$tmpdepfile"
|
||||
if test $stat -ne 0; then
|
||||
rm -f "$tmpdepfile"
|
||||
exit $stat
|
||||
fi
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
# The first sed program below extracts the file names and escapes
|
||||
# backslashes for cygpath. The second sed program outputs the file
|
||||
# name when reading, but also accumulates all include files in the
|
||||
# hold buffer in order to output them again at the end. This only
|
||||
# works with sed implementations that can handle large buffers.
|
||||
sed < "$tmpdepfile" -n '
|
||||
/^Note: including file: *\(.*\)/ {
|
||||
s//\1/
|
||||
s/\\/\\\\/g
|
||||
p
|
||||
}' | $cygpath_u | sort -u | sed -n '
|
||||
s/ /\\ /g
|
||||
s/\(.*\)/'"$tab"'\1 \\/p
|
||||
s/.\(.*\) \\/\1:/
|
||||
H
|
||||
$ {
|
||||
s/.*/'"$tab"'/
|
||||
G
|
||||
p
|
||||
}' >> "$depfile"
|
||||
echo >> "$depfile" # make sure the fragment doesn't end with a backslash
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvc7msys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
#nosideeffect)
|
||||
# This comment above is used by automake to tell side-effect
|
||||
# dependency tracking mechanisms from slower ones.
|
||||
|
||||
dashmstdout)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout, regardless of -o.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
test -z "$dashmflag" && dashmflag=-M
|
||||
# Require at least two characters before searching for ':'
|
||||
# in the target name. This is to cope with DOS-style filenames:
|
||||
# a dependency such as 'c:/foo/bar' could be seen as target 'c' otherwise.
|
||||
"$@" $dashmflag |
|
||||
sed "s|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
cat < "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process this sed invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
tr ' ' "$nl" < "$tmpdepfile" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
dashXmstdout)
|
||||
# This case only exists to satisfy depend.m4. It is never actually
|
||||
# run, as this mode is specially recognized in the preamble.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
makedepend)
|
||||
"$@" || exit $?
|
||||
# Remove any Libtool call
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
# X makedepend
|
||||
shift
|
||||
cleared=no eat=no
|
||||
for arg
|
||||
do
|
||||
case $cleared in
|
||||
no)
|
||||
set ""; shift
|
||||
cleared=yes ;;
|
||||
esac
|
||||
if test $eat = yes; then
|
||||
eat=no
|
||||
continue
|
||||
fi
|
||||
case "$arg" in
|
||||
-D*|-I*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
# Strip any option that makedepend may not understand. Remove
|
||||
# the object too, otherwise makedepend will parse it as a source file.
|
||||
-arch)
|
||||
eat=yes ;;
|
||||
-*|$object)
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"; shift ;;
|
||||
esac
|
||||
done
|
||||
obj_suffix=`echo "$object" | sed 's/^.*\././'`
|
||||
touch "$tmpdepfile"
|
||||
${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
|
||||
rm -f "$depfile"
|
||||
# makedepend may prepend the VPATH from the source file name to the object.
|
||||
# No need to regex-escape $object, excess matching of '.' is harmless.
|
||||
sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile"
|
||||
# Some versions of the HPUX 10.20 sed can't process the last invocation
|
||||
# correctly. Breaking it into two sed invocations is a workaround.
|
||||
sed '1,2d' "$tmpdepfile" \
|
||||
| tr ' ' "$nl" \
|
||||
| sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' \
|
||||
| sed -e 's/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile" "$tmpdepfile".bak
|
||||
;;
|
||||
|
||||
cpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
# Remove '-o $object'.
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case $arg in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift # fnord
|
||||
shift # $arg
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
"$@" -E \
|
||||
| sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
-e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
|
||||
| sed '$ s: \\$::' > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
cat < "$tmpdepfile" >> "$depfile"
|
||||
sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvisualcpp)
|
||||
# Important note: in order to support this mode, a compiler *must*
|
||||
# always write the preprocessed file to stdout.
|
||||
"$@" || exit $?
|
||||
|
||||
# Remove the call to Libtool.
|
||||
if test "$libtool" = yes; then
|
||||
while test "X$1" != 'X--mode=compile'; do
|
||||
shift
|
||||
done
|
||||
shift
|
||||
fi
|
||||
|
||||
IFS=" "
|
||||
for arg
|
||||
do
|
||||
case "$arg" in
|
||||
-o)
|
||||
shift
|
||||
;;
|
||||
$object)
|
||||
shift
|
||||
;;
|
||||
"-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
|
||||
set fnord "$@"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
*)
|
||||
set fnord "$@" "$arg"
|
||||
shift
|
||||
shift
|
||||
;;
|
||||
esac
|
||||
done
|
||||
"$@" -E 2>/dev/null |
|
||||
sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile"
|
||||
rm -f "$depfile"
|
||||
echo "$object : \\" > "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile"
|
||||
echo "$tab" >> "$depfile"
|
||||
sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile"
|
||||
rm -f "$tmpdepfile"
|
||||
;;
|
||||
|
||||
msvcmsys)
|
||||
# This case exists only to let depend.m4 do its work. It works by
|
||||
# looking at the text of this script. This case will never be run,
|
||||
# since it is checked for above.
|
||||
exit 1
|
||||
;;
|
||||
|
||||
none)
|
||||
exec "$@"
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "Unknown depmode $depmode" 1>&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit 0
|
||||
|
||||
# Local Variables:
|
||||
# mode: shell-script
|
||||
# sh-indentation: 2
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
@@ -0,0 +1,204 @@
|
||||
/* emacs-module.h - GNU Emacs module API.
|
||||
|
||||
Copyright (C) 2015-2017 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 3 of the License, 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. If not, see <http://www.gnu.org/licenses/>. */
|
||||
|
||||
#ifndef EMACS_MODULE_H
|
||||
#define EMACS_MODULE_H
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stddef.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
#if defined __cplusplus && __cplusplus >= 201103L
|
||||
# define EMACS_NOEXCEPT noexcept
|
||||
#else
|
||||
# define EMACS_NOEXCEPT
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* Current environment. */
|
||||
typedef struct emacs_env_25 emacs_env;
|
||||
|
||||
/* Opaque pointer representing an Emacs Lisp value.
|
||||
BEWARE: Do not assume NULL is a valid value! */
|
||||
typedef struct emacs_value_tag *emacs_value;
|
||||
|
||||
enum emacs_arity { emacs_variadic_function = -2 };
|
||||
|
||||
/* Struct passed to a module init function (emacs_module_init). */
|
||||
struct emacs_runtime
|
||||
{
|
||||
/* Structure size (for version checking). */
|
||||
ptrdiff_t size;
|
||||
|
||||
/* Private data; users should not touch this. */
|
||||
struct emacs_runtime_private *private_members;
|
||||
|
||||
/* Return an environment pointer. */
|
||||
emacs_env *(*get_environment) (struct emacs_runtime *ert);
|
||||
};
|
||||
|
||||
|
||||
/* Function prototype for the module init function. */
|
||||
typedef int (*emacs_init_function) (struct emacs_runtime *ert);
|
||||
|
||||
/* Function prototype for the module Lisp functions. */
|
||||
typedef emacs_value (*emacs_subr) (emacs_env *env, ptrdiff_t nargs,
|
||||
emacs_value args[], void *data);
|
||||
|
||||
/* Possible Emacs function call outcomes. */
|
||||
enum emacs_funcall_exit
|
||||
{
|
||||
/* Function has returned normally. */
|
||||
emacs_funcall_exit_return = 0,
|
||||
|
||||
/* Function has signaled an error using `signal'. */
|
||||
emacs_funcall_exit_signal = 1,
|
||||
|
||||
/* Function has exit using `throw'. */
|
||||
emacs_funcall_exit_throw = 2,
|
||||
};
|
||||
|
||||
struct emacs_env_25
|
||||
{
|
||||
/* Structure size (for version checking). */
|
||||
ptrdiff_t size;
|
||||
|
||||
/* Private data; users should not touch this. */
|
||||
struct emacs_env_private *private_members;
|
||||
|
||||
/* Memory management. */
|
||||
|
||||
emacs_value (*make_global_ref) (emacs_env *env,
|
||||
emacs_value any_reference);
|
||||
|
||||
void (*free_global_ref) (emacs_env *env,
|
||||
emacs_value global_reference);
|
||||
|
||||
/* Non-local exit handling. */
|
||||
|
||||
enum emacs_funcall_exit (*non_local_exit_check) (emacs_env *env);
|
||||
|
||||
void (*non_local_exit_clear) (emacs_env *env);
|
||||
|
||||
enum emacs_funcall_exit (*non_local_exit_get)
|
||||
(emacs_env *env,
|
||||
emacs_value *non_local_exit_symbol_out,
|
||||
emacs_value *non_local_exit_data_out);
|
||||
|
||||
void (*non_local_exit_signal) (emacs_env *env,
|
||||
emacs_value non_local_exit_symbol,
|
||||
emacs_value non_local_exit_data);
|
||||
|
||||
void (*non_local_exit_throw) (emacs_env *env,
|
||||
emacs_value tag,
|
||||
emacs_value value);
|
||||
|
||||
/* Function registration. */
|
||||
|
||||
emacs_value (*make_function) (emacs_env *env,
|
||||
ptrdiff_t min_arity,
|
||||
ptrdiff_t max_arity,
|
||||
emacs_value (*function) (emacs_env *env,
|
||||
ptrdiff_t nargs,
|
||||
emacs_value args[],
|
||||
void *)
|
||||
EMACS_NOEXCEPT,
|
||||
const char *documentation,
|
||||
void *data);
|
||||
|
||||
emacs_value (*funcall) (emacs_env *env,
|
||||
emacs_value function,
|
||||
ptrdiff_t nargs,
|
||||
emacs_value args[]);
|
||||
|
||||
emacs_value (*intern) (emacs_env *env,
|
||||
const char *symbol_name);
|
||||
|
||||
/* Type conversion. */
|
||||
|
||||
emacs_value (*type_of) (emacs_env *env,
|
||||
emacs_value value);
|
||||
|
||||
bool (*is_not_nil) (emacs_env *env, emacs_value value);
|
||||
|
||||
bool (*eq) (emacs_env *env, emacs_value a, emacs_value b);
|
||||
|
||||
intmax_t (*extract_integer) (emacs_env *env, emacs_value value);
|
||||
|
||||
emacs_value (*make_integer) (emacs_env *env, intmax_t value);
|
||||
|
||||
double (*extract_float) (emacs_env *env, emacs_value value);
|
||||
|
||||
emacs_value (*make_float) (emacs_env *env, double value);
|
||||
|
||||
/* Copy the content of the Lisp string VALUE to BUFFER as an utf8
|
||||
null-terminated string.
|
||||
|
||||
SIZE must point to the total size of the buffer. If BUFFER is
|
||||
NULL or if SIZE is not big enough, write the required buffer size
|
||||
to SIZE and return false.
|
||||
|
||||
Note that SIZE must include the last null byte (e.g. "abc" needs
|
||||
a buffer of size 4).
|
||||
|
||||
Return true if the string was successfully copied. */
|
||||
|
||||
bool (*copy_string_contents) (emacs_env *env,
|
||||
emacs_value value,
|
||||
char *buffer,
|
||||
ptrdiff_t *size_inout);
|
||||
|
||||
/* Create a Lisp string from a utf8 encoded string. */
|
||||
emacs_value (*make_string) (emacs_env *env,
|
||||
const char *contents, ptrdiff_t length);
|
||||
|
||||
/* Embedded pointer type. */
|
||||
emacs_value (*make_user_ptr) (emacs_env *env,
|
||||
void (*fin) (void *) EMACS_NOEXCEPT,
|
||||
void *ptr);
|
||||
|
||||
void *(*get_user_ptr) (emacs_env *env, emacs_value uptr);
|
||||
void (*set_user_ptr) (emacs_env *env, emacs_value uptr, void *ptr);
|
||||
|
||||
void (*(*get_user_finalizer) (emacs_env *env, emacs_value uptr))
|
||||
(void *) EMACS_NOEXCEPT;
|
||||
void (*set_user_finalizer) (emacs_env *env,
|
||||
emacs_value uptr,
|
||||
void (*fin) (void *) EMACS_NOEXCEPT);
|
||||
|
||||
/* Vector functions. */
|
||||
emacs_value (*vec_get) (emacs_env *env, emacs_value vec, ptrdiff_t i);
|
||||
|
||||
void (*vec_set) (emacs_env *env, emacs_value vec, ptrdiff_t i,
|
||||
emacs_value val);
|
||||
|
||||
ptrdiff_t (*vec_size) (emacs_env *env, emacs_value vec);
|
||||
};
|
||||
|
||||
/* Every module should define a function as follows. */
|
||||
extern int emacs_module_init (struct emacs_runtime *ert);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* EMACS_MODULE_H */
|
||||
@@ -0,0 +1,322 @@
|
||||
#include "emacs-zmq.h"
|
||||
#include <assert.h>
|
||||
#include <signal.h>
|
||||
|
||||
int plugin_is_GPL_compatible;
|
||||
|
||||
typedef struct {
|
||||
char *name;
|
||||
void *fun;
|
||||
char const * doc;
|
||||
ptrdiff_t minarity;
|
||||
ptrdiff_t maxarity;
|
||||
} ezmq_fun_t;
|
||||
|
||||
emacs_env *env = NULL;
|
||||
emacs_value Qzmq_error, Qt, Qnil, Qnth, Qlist,
|
||||
Qwrong_type_argument, Qargs_out_of_range,
|
||||
Qcons, Qstring, Qvector, Qcar, Qcdr, Qlength, Qinteger, Qequal,
|
||||
Qzmq_POLLIN, Qzmq_POLLPRI, Qzmq_POLLERR, Qzmq_POLLOUT,
|
||||
Izmq_POLLIN, Izmq_POLLPRI, Izmq_POLLERR, Izmq_POLLOUT;
|
||||
|
||||
EZMQ_DOC(ezmq_cleanup_globrefs, "",
|
||||
"Free global references flagged for release.\n"
|
||||
"Internally, ZMQ keeps references to Emacs objects that are still in use.\n"
|
||||
"Most notably, a `zmq-poller' object keeps track of all the sockets added to it\n"
|
||||
"so that they do not get cleaned up by garbage collection if they go out of scope\n"
|
||||
"while a poller is still using them.");
|
||||
static emacs_value
|
||||
ezmq_cleanup_globrefs()
|
||||
{
|
||||
emacs_value val;
|
||||
while((val = ezmq_pop_globref())) {
|
||||
FREE_GLOBREF(val);
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
#define EZMQ_MAXARGS 5
|
||||
|
||||
static emacs_value _fargs[EZMQ_MAXARGS];
|
||||
|
||||
/**
|
||||
Dispatch to the intended C function from a call to a ZMQ function in Emacs.
|
||||
|
||||
CURRENT_ENV is the current Emacs environment for the dispatch call. NARGS is
|
||||
the number of arguments for this call whose values are contained in ARGS.
|
||||
INFO is the ezmq_fun_t* which holds the function to dispatch to.
|
||||
*/
|
||||
static emacs_value
|
||||
ezmq_dispatch(emacs_env *current_env, ptrdiff_t nargs, emacs_value args[], void *info)
|
||||
{
|
||||
// Set the global environment for this dispatch call.
|
||||
env = current_env;
|
||||
|
||||
// Ensure the number of arguments are within range
|
||||
emacs_value ret = Qnil;
|
||||
if(nargs > EZMQ_MAXARGS) {
|
||||
// Better error
|
||||
ezmq_signal(Qargs_out_of_range, 2, INT(nargs), INT(EZMQ_MAXARGS));
|
||||
return ret;
|
||||
}
|
||||
|
||||
// Extract the function information
|
||||
void *fun = ((ezmq_fun_t *)info)->fun;
|
||||
ptrdiff_t maxargs = ((ezmq_fun_t *)info)->maxarity;
|
||||
|
||||
if(nargs < maxargs) {
|
||||
// Fill in nil values for optional arguments
|
||||
int i;
|
||||
for(i = (maxargs - 1); i >= nargs; i--) {
|
||||
_fargs[i] = Qnil;
|
||||
}
|
||||
for(i = 0; i < nargs; i++) {
|
||||
_fargs[i] = args[i];
|
||||
}
|
||||
args = _fargs;
|
||||
nargs = maxargs;
|
||||
}
|
||||
|
||||
// Dispatch based on number of arguments
|
||||
switch(nargs) {
|
||||
case 0:
|
||||
ret = ((emacs_value(*)(void))fun)();
|
||||
break;
|
||||
case 1:
|
||||
ret = ((emacs_value(*)(emacs_value))fun)(args[0]);
|
||||
break;
|
||||
case 2:
|
||||
ret = ((emacs_value(*)(emacs_value, emacs_value))fun)(args[0], args[1]);
|
||||
break;
|
||||
case 3:
|
||||
ret = ((emacs_value(*)(emacs_value, emacs_value,
|
||||
emacs_value))fun)(args[0], args[1],
|
||||
args[2]);
|
||||
break;
|
||||
// Currently unused
|
||||
case 4:
|
||||
ret = ((emacs_value(*)(emacs_value, emacs_value,
|
||||
emacs_value, emacs_value))fun)(args[0], args[1],
|
||||
args[2], args[3]);
|
||||
break;
|
||||
case EZMQ_MAXARGS:
|
||||
ret = ((emacs_value(*)(emacs_value, emacs_value,
|
||||
emacs_value, emacs_value,
|
||||
emacs_value))fun)(args[0], args[1],
|
||||
args[2], args[3],
|
||||
args[4]);
|
||||
break;
|
||||
}
|
||||
|
||||
// Cleanup global references flagged for deletion
|
||||
ezmq_cleanup_globrefs();
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
static void
|
||||
ezmq_bind_function(ezmq_fun_t *fun)
|
||||
{
|
||||
// Make a copy of the function information. Used by ezmq_dispatch.
|
||||
ezmq_fun_t *info = ezmq_malloc(sizeof(ezmq_fun_t));
|
||||
if(NONLOCAL_EXIT()) return;
|
||||
|
||||
memcpy(info, fun, sizeof(ezmq_fun_t));
|
||||
emacs_value Sfun = env->make_function(env,
|
||||
fun->minarity, fun->maxarity,
|
||||
&ezmq_dispatch,
|
||||
fun->doc,
|
||||
info);
|
||||
// Use defalias here so that at least we get a link to zmq.el when examining
|
||||
// the documentation for a zmq function.
|
||||
FUNCALL(INTERN("defalias"), 2, ((emacs_value []){INTERN(fun->name), Sfun}));
|
||||
}
|
||||
|
||||
|
||||
static void
|
||||
ezmq_provide(const char *feature)
|
||||
{
|
||||
FUNCALL(INTERN("provide"), 1, ((emacs_value []){ INTERN(feature) }));
|
||||
}
|
||||
|
||||
#define EZMQ_DEFERR(err) \
|
||||
args[0] = INTERN("zmq-"#err); \
|
||||
args[1] = STRING(#err, sizeof(#err) - 1); \
|
||||
FUNCALL(Qdefine_error, 3, args) \
|
||||
|
||||
/**
|
||||
Make error symbols for common C errors used by ZMQ. Each error symbol is the
|
||||
C error with a zmq- prefix. So EAGAIN becomes zmq-EAGAIN in Emacs.
|
||||
*/
|
||||
static void
|
||||
ezmq_make_error_symbols()
|
||||
{
|
||||
emacs_value Qdefine_error = INTERN("define-error");
|
||||
const char *msg = "An error occured in ZMQ";
|
||||
emacs_value args[3];
|
||||
|
||||
// Define the root error symbol for ZMQ errors
|
||||
args[0] = Qzmq_error;
|
||||
args[1] = STRING(msg, strlen(msg));
|
||||
args[2] = INTERN("error");
|
||||
FUNCALL(Qdefine_error, 3, args);
|
||||
|
||||
// Set zmq-ERROR as the root error for all errors defined below
|
||||
args[2] = Qzmq_error;
|
||||
// Define common errors as symbols
|
||||
// Also see zmq_signal_error
|
||||
EZMQ_DEFERR(EINVAL);
|
||||
EZMQ_DEFERR(EPROTONOSUPPORT);
|
||||
EZMQ_DEFERR(ENOCOMPATPROTO);
|
||||
EZMQ_DEFERR(EADDRINUSE);
|
||||
EZMQ_DEFERR(EADDRNOTAVAIL);
|
||||
EZMQ_DEFERR(ENODEV);
|
||||
EZMQ_DEFERR(ETERM);
|
||||
EZMQ_DEFERR(ENOTSOCK);
|
||||
EZMQ_DEFERR(EMTHREAD);
|
||||
EZMQ_DEFERR(EFAULT);
|
||||
EZMQ_DEFERR(EINTR);
|
||||
EZMQ_DEFERR(ENOTSUP);
|
||||
EZMQ_DEFERR(ENOENT);
|
||||
EZMQ_DEFERR(ENOMEM);
|
||||
EZMQ_DEFERR(EAGAIN);
|
||||
EZMQ_DEFERR(EFSM);
|
||||
EZMQ_DEFERR(EHOSTUNREACH);
|
||||
EZMQ_DEFERR(EMFILE);
|
||||
}
|
||||
|
||||
#define EZMQ_DEFUN(ename, cfun, argmin, argmax) \
|
||||
do { \
|
||||
_info.name = ename; \
|
||||
_info.fun = cfun; \
|
||||
_info.minarity = argmin; \
|
||||
_info.maxarity = argmax; \
|
||||
_info.doc = __zmq_doc_##cfun; \
|
||||
ezmq_bind_function(&_info); \
|
||||
} while (0)
|
||||
|
||||
static void
|
||||
ezmq_define_functions()
|
||||
{
|
||||
ezmq_fun_t _info;
|
||||
|
||||
// Define garbage collection functions for freeing global references
|
||||
EZMQ_DEFUN("zmq--cleanup-globrefs", ezmq_cleanup_globrefs, 0, 0);
|
||||
EZMQ_DEFUN("zmq-socket", ezmq_socket, 2, 2);
|
||||
EZMQ_DEFUN("zmq-send", ezmq_send, 2, 3);
|
||||
EZMQ_DEFUN("zmq-recv", ezmq_recv, 1, 3);
|
||||
EZMQ_DEFUN("zmq-bind", ezmq_bind, 2, 2);
|
||||
EZMQ_DEFUN("zmq-connect", ezmq_connect, 2, 2);
|
||||
EZMQ_DEFUN("zmq-join", ezmq_join, 2, 2);
|
||||
EZMQ_DEFUN("zmq-unbind", ezmq_unbind, 2, 2);
|
||||
EZMQ_DEFUN("zmq-disconnect", ezmq_disconnect, 2, 2);
|
||||
EZMQ_DEFUN("zmq-leave", ezmq_leave, 2, 2);
|
||||
EZMQ_DEFUN("zmq-close", ezmq_close, 1, 1);
|
||||
EZMQ_DEFUN("zmq-proxy", ezmq_proxy, 2, 3);
|
||||
EZMQ_DEFUN("zmq-proxy-steerable", ezmq_proxy_steerable, 2, 4);
|
||||
EZMQ_DEFUN("zmq-socket-monitor", ezmq_socket_monitor, 3, 3);
|
||||
EZMQ_DEFUN("zmq-socket-set", ezmq_setsockopt, 3, 3);
|
||||
EZMQ_DEFUN("zmq-socket-get", ezmq_getsockopt, 2, 2);
|
||||
EZMQ_DEFUN("zmq-context", ezmq_context, 0, 0);
|
||||
EZMQ_DEFUN("zmq-context-terminate", ezmq_ctx_term, 1, 1);
|
||||
EZMQ_DEFUN("zmq-context-shutdown", ezmq_ctx_shutdown, 1, 1);
|
||||
EZMQ_DEFUN("zmq-context-get", ezmq_ctx_get, 2, 2);
|
||||
EZMQ_DEFUN("zmq-context-set", ezmq_ctx_set, 3, 3);
|
||||
EZMQ_DEFUN("zmq-message", ezmq_message, 0, 1);
|
||||
EZMQ_DEFUN("zmq-message-size", ezmq_message_size, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-data", ezmq_message_data, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-more-p", ezmq_message_more, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-copy", ezmq_message_copy, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-move", ezmq_message_move, 2, 2);
|
||||
EZMQ_DEFUN("zmq-message-close", ezmq_message_close, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-set", ezmq_message_set, 3, 3);
|
||||
EZMQ_DEFUN("zmq-message-get", ezmq_message_get, 2, 2);
|
||||
EZMQ_DEFUN("zmq-message-recv", ezmq_message_recv, 2, 3);
|
||||
EZMQ_DEFUN("zmq-message-send", ezmq_message_send, 2, 3);
|
||||
EZMQ_DEFUN("zmq-message-gets", ezmq_message_gets, 2, 2);
|
||||
EZMQ_DEFUN("zmq-message-routing-id", ezmq_message_routing_id, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-set-routing-id", ezmq_message_set_routing_id, 2, 2);
|
||||
EZMQ_DEFUN("zmq-message-group", ezmq_message_group, 1, 1);
|
||||
EZMQ_DEFUN("zmq-message-set-group", ezmq_message_set_group, 2, 2);
|
||||
EZMQ_DEFUN("zmq-poll", ezmq_poll, 2, 2);
|
||||
EZMQ_DEFUN("zmq-poller", ezmq_poller_new, 0, 0);
|
||||
EZMQ_DEFUN("zmq-poller-add", ezmq_poller_add, 3, 3);
|
||||
EZMQ_DEFUN("zmq-poller-modify", ezmq_poller_modify, 3, 3);
|
||||
EZMQ_DEFUN("zmq-poller-remove", ezmq_poller_remove, 2, 2);
|
||||
EZMQ_DEFUN("zmq-poller-destroy", ezmq_poller_destroy, 1, 1);
|
||||
EZMQ_DEFUN("zmq-poller-wait", ezmq_poller_wait, 2, 2);
|
||||
EZMQ_DEFUN("zmq-poller-wait-all", ezmq_poller_wait_all, 3, 3);
|
||||
EZMQ_DEFUN("zmq-version", ezmq_version, 0, 0);
|
||||
EZMQ_DEFUN("zmq-has", ezmq_has, 1, 1);
|
||||
EZMQ_DEFUN("zmq-z85-decode", ezmq_z85_decode, 1, 1);
|
||||
EZMQ_DEFUN("zmq-z85-encode", ezmq_z85_encode, 1, 1);
|
||||
EZMQ_DEFUN("zmq-curve-keypair", ezmq_curve_keypair, 0, 0);
|
||||
EZMQ_DEFUN("zmq-curve-public", ezmq_curve_public, 1, 1);
|
||||
EZMQ_DEFUN("zmq-equal", ezmq_equal, 2, 2);
|
||||
EZMQ_DEFUN("zmq-message-p", ezmq_message_p, 1, 1);
|
||||
EZMQ_DEFUN("zmq-socket-p", ezmq_socket_p, 1, 1);
|
||||
EZMQ_DEFUN("zmq-context-p", ezmq_context_p, 1, 1);
|
||||
EZMQ_DEFUN("zmq-poller-p", ezmq_poller_p, 1, 1);
|
||||
}
|
||||
|
||||
static bool initialized = false;
|
||||
|
||||
int
|
||||
emacs_module_init(struct emacs_runtime *ert)
|
||||
{
|
||||
if(initialized)
|
||||
return 0;
|
||||
|
||||
// From https://phst.eu/emacs-modules
|
||||
/* Fail if Emacs is too old. */
|
||||
assert (ert->size > 0);
|
||||
if ((size_t) ert->size < sizeof *ert)
|
||||
return 1;
|
||||
|
||||
// Retrieve the current emacs environment
|
||||
env = ert->get_environment(ert);
|
||||
|
||||
// From https://phst.eu/emacs-modules
|
||||
if ((size_t) env->size < sizeof *env)
|
||||
return 2;
|
||||
/* Prevent Emacs’s dangerous stack overflow recovery. */
|
||||
if (signal (SIGSEGV, SIG_DFL) == SIG_ERR)
|
||||
return 3;
|
||||
|
||||
Qt = GLOBREF(INTERN("t"));
|
||||
Qnil = GLOBREF(INTERN("nil"));
|
||||
Qnth = GLOBREF(INTERN("nth"));
|
||||
Qwrong_type_argument = GLOBREF(INTERN("wrong-type-argument"));
|
||||
Qargs_out_of_range = GLOBREF(INTERN("args-out-of-range"));
|
||||
Qlist = GLOBREF(INTERN("list"));
|
||||
Qstring = GLOBREF(INTERN("string"));
|
||||
Qvector = GLOBREF(INTERN("vector"));
|
||||
Qcons = GLOBREF(INTERN("cons"));
|
||||
Qcar = GLOBREF(INTERN("car"));
|
||||
Qcdr = GLOBREF(INTERN("cdr"));
|
||||
Qequal = GLOBREF(INTERN("equal"));
|
||||
Qinteger = GLOBREF(INTERN("integer"));
|
||||
Qlength = GLOBREF(INTERN("length"));
|
||||
Qzmq_error = GLOBREF(INTERN("zmq-ERROR"));
|
||||
|
||||
ezmq_make_error_symbols();
|
||||
|
||||
ezmq_expose_constants();
|
||||
Qzmq_POLLIN = GLOBREF(INTERN("zmq-POLLIN"));
|
||||
Qzmq_POLLPRI = GLOBREF(INTERN("zmq-POLLPRI"));
|
||||
Qzmq_POLLOUT = GLOBREF(INTERN("zmq-POLLOUT"));
|
||||
Qzmq_POLLERR = GLOBREF(INTERN("zmq-POLLERR"));
|
||||
|
||||
emacs_value Qsval = INTERN("symbol-value");
|
||||
Izmq_POLLIN = GLOBREF(FUNCALL(Qsval, 1, &Qzmq_POLLIN));
|
||||
Izmq_POLLPRI = GLOBREF(FUNCALL(Qsval, 1, &Qzmq_POLLPRI));
|
||||
Izmq_POLLOUT = GLOBREF(FUNCALL(Qsval, 1, &Qzmq_POLLOUT));
|
||||
Izmq_POLLERR = GLOBREF(FUNCALL(Qsval, 1, &Qzmq_POLLERR));
|
||||
|
||||
ezmq_define_functions();
|
||||
|
||||
ezmq_provide("zmq-core");
|
||||
|
||||
if(!NONLOCAL_EXIT()) initialized = true;
|
||||
return 0;
|
||||
}
|
||||
@@ -0,0 +1,34 @@
|
||||
#ifndef __EMACS_ZMQ_H__
|
||||
#define __EMACS_ZMQ_H__
|
||||
|
||||
#include "core.h"
|
||||
#include "util.h"
|
||||
#include "msg.h"
|
||||
#include "socket.h"
|
||||
#include "context.h"
|
||||
#include "poll.h"
|
||||
|
||||
// https://gcc.gnu.org/wiki/Visibility
|
||||
#if defined _WIN32 || defined __CYGWIN__
|
||||
#ifdef __GNUC__
|
||||
#define ZMQ_EXPORT __attribute__ ((dllexport))
|
||||
#else
|
||||
#define ZMQ_EXPORT __declspec(dllexport)
|
||||
#endif
|
||||
#else
|
||||
#if __GNUC__ >= 4
|
||||
#define ZMQ_EXPORT __attribute__ ((visibility ("default")))
|
||||
#else
|
||||
#define ZMQ_EXPORT
|
||||
#endif
|
||||
#endif
|
||||
|
||||
ZMQ_EXPORT int plugin_is_GPL_compatible;
|
||||
// Defined in constants.c
|
||||
extern void
|
||||
ezmq_expose_constants();
|
||||
|
||||
ZMQ_EXPORT int
|
||||
emacs_module_init(struct emacs_runtime *ert);
|
||||
|
||||
#endif /* __EMACS_ZMQ_H__ */
|
||||
@@ -0,0 +1,41 @@
|
||||
# emacs-zmq.la - a libtool library file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# The name that we can dlopen(3).
|
||||
dlname='emacs-zmq.so'
|
||||
|
||||
# Names of this library.
|
||||
library_names='emacs-zmq.so emacs-zmq.so emacs-zmq.so'
|
||||
|
||||
# The name of the static archive.
|
||||
old_library=''
|
||||
|
||||
# Linker flags that cannot go in dependency_libs.
|
||||
inherited_linker_flags=''
|
||||
|
||||
# Libraries that this one depends upon.
|
||||
dependency_libs=' -lzmq'
|
||||
|
||||
# Names of additional weak libraries provided by this library
|
||||
weak_library_names=''
|
||||
|
||||
# Version information for emacs-zmq.
|
||||
current=0
|
||||
age=0
|
||||
revision=0
|
||||
|
||||
# Is this an already installed library?
|
||||
installed=no
|
||||
|
||||
# Should we warn about portability when linking against -modules?
|
||||
shouldnotlink=yes
|
||||
|
||||
# Files to dlopen/dlpreopen
|
||||
dlopen=''
|
||||
dlpreopen=''
|
||||
|
||||
# Directory that this library needs to be installed in:
|
||||
libdir='/home/daniel/repos/emacs-conf/lisp/zmq/lib'
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-constants.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-constants.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-context.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-context.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-core.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-core.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-emacs-zmq.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-emacs-zmq.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-msg.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-msg.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-poll.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-poll.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-socket.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-socket.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# emacs_zmq_la-util.lo - a libtool object file
|
||||
# Generated by libtool (GNU libtool) 2.4.7.4-1ec8f-dirty
|
||||
#
|
||||
# Please DO NOT delete this file!
|
||||
# It is necessary for linking the library.
|
||||
|
||||
# Name of the PIC object.
|
||||
pic_object='.libs/emacs_zmq_la-util.o'
|
||||
|
||||
# Name of the non-PIC object
|
||||
non_pic_object=none
|
||||
|
||||
Executable
+541
@@ -0,0 +1,541 @@
|
||||
#!/bin/sh
|
||||
# install - install a program, script, or datafile
|
||||
|
||||
scriptversion=2020-11-14.01; # UTC
|
||||
|
||||
# This originates from X11R5 (mit/util/scripts/install.sh), which was
|
||||
# later released in X11R6 (xc/config/util/install.sh) with the
|
||||
# following copyright and license.
|
||||
#
|
||||
# Copyright (C) 1994 X Consortium
|
||||
#
|
||||
# Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
# of this software and associated documentation files (the "Software"), to
|
||||
# deal in the Software without restriction, including without limitation the
|
||||
# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
|
||||
# sell copies of the Software, and to permit persons to whom the Software is
|
||||
# furnished to do so, subject to the following conditions:
|
||||
#
|
||||
# The above copyright notice and this permission notice shall be included in
|
||||
# all copies or substantial portions of the Software.
|
||||
#
|
||||
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
|
||||
# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
|
||||
# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
#
|
||||
# Except as contained in this notice, the name of the X Consortium shall not
|
||||
# be used in advertising or otherwise to promote the sale, use or other deal-
|
||||
# ings in this Software without prior written authorization from the X Consor-
|
||||
# tium.
|
||||
#
|
||||
#
|
||||
# FSF changes to this file are in the public domain.
|
||||
#
|
||||
# Calling this script install-sh is preferred over install.sh, to prevent
|
||||
# 'make' implicit rules from creating a file called install from it
|
||||
# when there is no Makefile.
|
||||
#
|
||||
# This script is compatible with the BSD install script, but was written
|
||||
# from scratch.
|
||||
|
||||
tab=' '
|
||||
nl='
|
||||
'
|
||||
IFS=" $tab$nl"
|
||||
|
||||
# Set DOITPROG to "echo" to test this script.
|
||||
|
||||
doit=${DOITPROG-}
|
||||
doit_exec=${doit:-exec}
|
||||
|
||||
# Put in absolute file names if you don't have them in your path;
|
||||
# or use environment vars.
|
||||
|
||||
chgrpprog=${CHGRPPROG-chgrp}
|
||||
chmodprog=${CHMODPROG-chmod}
|
||||
chownprog=${CHOWNPROG-chown}
|
||||
cmpprog=${CMPPROG-cmp}
|
||||
cpprog=${CPPROG-cp}
|
||||
mkdirprog=${MKDIRPROG-mkdir}
|
||||
mvprog=${MVPROG-mv}
|
||||
rmprog=${RMPROG-rm}
|
||||
stripprog=${STRIPPROG-strip}
|
||||
|
||||
posix_mkdir=
|
||||
|
||||
# Desired mode of installed file.
|
||||
mode=0755
|
||||
|
||||
# Create dirs (including intermediate dirs) using mode 755.
|
||||
# This is like GNU 'install' as of coreutils 8.32 (2020).
|
||||
mkdir_umask=22
|
||||
|
||||
backupsuffix=
|
||||
chgrpcmd=
|
||||
chmodcmd=$chmodprog
|
||||
chowncmd=
|
||||
mvcmd=$mvprog
|
||||
rmcmd="$rmprog -f"
|
||||
stripcmd=
|
||||
|
||||
src=
|
||||
dst=
|
||||
dir_arg=
|
||||
dst_arg=
|
||||
|
||||
copy_on_change=false
|
||||
is_target_a_directory=possibly
|
||||
|
||||
usage="\
|
||||
Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
|
||||
or: $0 [OPTION]... SRCFILES... DIRECTORY
|
||||
or: $0 [OPTION]... -t DIRECTORY SRCFILES...
|
||||
or: $0 [OPTION]... -d DIRECTORIES...
|
||||
|
||||
In the 1st form, copy SRCFILE to DSTFILE.
|
||||
In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
|
||||
In the 4th, create DIRECTORIES.
|
||||
|
||||
Options:
|
||||
--help display this help and exit.
|
||||
--version display version info and exit.
|
||||
|
||||
-c (ignored)
|
||||
-C install only if different (preserve data modification time)
|
||||
-d create directories instead of installing files.
|
||||
-g GROUP $chgrpprog installed files to GROUP.
|
||||
-m MODE $chmodprog installed files to MODE.
|
||||
-o USER $chownprog installed files to USER.
|
||||
-p pass -p to $cpprog.
|
||||
-s $stripprog installed files.
|
||||
-S SUFFIX attempt to back up existing files, with suffix SUFFIX.
|
||||
-t DIRECTORY install into DIRECTORY.
|
||||
-T report an error if DSTFILE is a directory.
|
||||
|
||||
Environment variables override the default commands:
|
||||
CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG
|
||||
RMPROG STRIPPROG
|
||||
|
||||
By default, rm is invoked with -f; when overridden with RMPROG,
|
||||
it's up to you to specify -f if you want it.
|
||||
|
||||
If -S is not specified, no backups are attempted.
|
||||
|
||||
Email bug reports to bug-automake@gnu.org.
|
||||
Automake home page: https://www.gnu.org/software/automake/
|
||||
"
|
||||
|
||||
while test $# -ne 0; do
|
||||
case $1 in
|
||||
-c) ;;
|
||||
|
||||
-C) copy_on_change=true;;
|
||||
|
||||
-d) dir_arg=true;;
|
||||
|
||||
-g) chgrpcmd="$chgrpprog $2"
|
||||
shift;;
|
||||
|
||||
--help) echo "$usage"; exit $?;;
|
||||
|
||||
-m) mode=$2
|
||||
case $mode in
|
||||
*' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*)
|
||||
echo "$0: invalid mode: $mode" >&2
|
||||
exit 1;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-o) chowncmd="$chownprog $2"
|
||||
shift;;
|
||||
|
||||
-p) cpprog="$cpprog -p";;
|
||||
|
||||
-s) stripcmd=$stripprog;;
|
||||
|
||||
-S) backupsuffix="$2"
|
||||
shift;;
|
||||
|
||||
-t)
|
||||
is_target_a_directory=always
|
||||
dst_arg=$2
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
shift;;
|
||||
|
||||
-T) is_target_a_directory=never;;
|
||||
|
||||
--version) echo "$0 $scriptversion"; exit $?;;
|
||||
|
||||
--) shift
|
||||
break;;
|
||||
|
||||
-*) echo "$0: invalid option: $1" >&2
|
||||
exit 1;;
|
||||
|
||||
*) break;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
# We allow the use of options -d and -T together, by making -d
|
||||
# take the precedence; this is for compatibility with GNU install.
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
if test -n "$dst_arg"; then
|
||||
echo "$0: target directory not allowed when installing a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then
|
||||
# When -d is used, all remaining arguments are directories to create.
|
||||
# When -t is used, the destination is already specified.
|
||||
# Otherwise, the last argument is the destination. Remove it from $@.
|
||||
for arg
|
||||
do
|
||||
if test -n "$dst_arg"; then
|
||||
# $@ is not empty: it contains at least $arg.
|
||||
set fnord "$@" "$dst_arg"
|
||||
shift # fnord
|
||||
fi
|
||||
shift # arg
|
||||
dst_arg=$arg
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $dst_arg in
|
||||
-* | [=\(\)!]) dst_arg=./$dst_arg;;
|
||||
esac
|
||||
done
|
||||
fi
|
||||
|
||||
if test $# -eq 0; then
|
||||
if test -z "$dir_arg"; then
|
||||
echo "$0: no input file specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
# It's OK to call 'install-sh -d' without argument.
|
||||
# This can happen when creating conditional directories.
|
||||
exit 0
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
if test $# -gt 1 || test "$is_target_a_directory" = always; then
|
||||
if test ! -d "$dst_arg"; then
|
||||
echo "$0: $dst_arg: Is not a directory." >&2
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -z "$dir_arg"; then
|
||||
do_exit='(exit $ret); exit $ret'
|
||||
trap "ret=129; $do_exit" 1
|
||||
trap "ret=130; $do_exit" 2
|
||||
trap "ret=141; $do_exit" 13
|
||||
trap "ret=143; $do_exit" 15
|
||||
|
||||
# Set umask so as not to create temps with too-generous modes.
|
||||
# However, 'strip' requires both read and write access to temps.
|
||||
case $mode in
|
||||
# Optimize common cases.
|
||||
*644) cp_umask=133;;
|
||||
*755) cp_umask=22;;
|
||||
|
||||
*[0-7])
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw='% 200'
|
||||
fi
|
||||
cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;;
|
||||
*)
|
||||
if test -z "$stripcmd"; then
|
||||
u_plus_rw=
|
||||
else
|
||||
u_plus_rw=,u+rw
|
||||
fi
|
||||
cp_umask=$mode$u_plus_rw;;
|
||||
esac
|
||||
fi
|
||||
|
||||
for src
|
||||
do
|
||||
# Protect names problematic for 'test' and other utilities.
|
||||
case $src in
|
||||
-* | [=\(\)!]) src=./$src;;
|
||||
esac
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
dst=$src
|
||||
dstdir=$dst
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
# Don't chown directories that already exist.
|
||||
if test $dstdir_status = 0; then
|
||||
chowncmd=""
|
||||
fi
|
||||
else
|
||||
|
||||
# Waiting for this to be detected by the "$cpprog $src $dsttmp" command
|
||||
# might cause directories to be created, which would be especially bad
|
||||
# if $src (and thus $dsttmp) contains '*'.
|
||||
if test ! -f "$src" && test ! -d "$src"; then
|
||||
echo "$0: $src does not exist." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if test -z "$dst_arg"; then
|
||||
echo "$0: no destination specified." >&2
|
||||
exit 1
|
||||
fi
|
||||
dst=$dst_arg
|
||||
|
||||
# If destination is a directory, append the input filename.
|
||||
if test -d "$dst"; then
|
||||
if test "$is_target_a_directory" = never; then
|
||||
echo "$0: $dst_arg: Is a directory" >&2
|
||||
exit 1
|
||||
fi
|
||||
dstdir=$dst
|
||||
dstbase=`basename "$src"`
|
||||
case $dst in
|
||||
*/) dst=$dst$dstbase;;
|
||||
*) dst=$dst/$dstbase;;
|
||||
esac
|
||||
dstdir_status=0
|
||||
else
|
||||
dstdir=`dirname "$dst"`
|
||||
test -d "$dstdir"
|
||||
dstdir_status=$?
|
||||
fi
|
||||
fi
|
||||
|
||||
case $dstdir in
|
||||
*/) dstdirslash=$dstdir;;
|
||||
*) dstdirslash=$dstdir/;;
|
||||
esac
|
||||
|
||||
obsolete_mkdir_used=false
|
||||
|
||||
if test $dstdir_status != 0; then
|
||||
case $posix_mkdir in
|
||||
'')
|
||||
# With -d, create the new directory with the user-specified mode.
|
||||
# Otherwise, rely on $mkdir_umask.
|
||||
if test -n "$dir_arg"; then
|
||||
mkdir_mode=-m$mode
|
||||
else
|
||||
mkdir_mode=
|
||||
fi
|
||||
|
||||
posix_mkdir=false
|
||||
# The $RANDOM variable is not portable (e.g., dash). Use it
|
||||
# here however when possible just to lower collision chance.
|
||||
tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$
|
||||
|
||||
trap '
|
||||
ret=$?
|
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir" 2>/dev/null
|
||||
exit $ret
|
||||
' 0
|
||||
|
||||
# Because "mkdir -p" follows existing symlinks and we likely work
|
||||
# directly in world-writeable /tmp, make sure that the '$tmpdir'
|
||||
# directory is successfully created first before we actually test
|
||||
# 'mkdir -p'.
|
||||
if (umask $mkdir_umask &&
|
||||
$mkdirprog $mkdir_mode "$tmpdir" &&
|
||||
exec $mkdirprog $mkdir_mode -p -- "$tmpdir/a/b") >/dev/null 2>&1
|
||||
then
|
||||
if test -z "$dir_arg" || {
|
||||
# Check for POSIX incompatibilities with -m.
|
||||
# HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or
|
||||
# other-writable bit of parent directory when it shouldn't.
|
||||
# FreeBSD 6.1 mkdir -m -p sets mode of existing directory.
|
||||
test_tmpdir="$tmpdir/a"
|
||||
ls_ld_tmpdir=`ls -ld "$test_tmpdir"`
|
||||
case $ls_ld_tmpdir in
|
||||
d????-?r-*) different_mode=700;;
|
||||
d????-?--*) different_mode=755;;
|
||||
*) false;;
|
||||
esac &&
|
||||
$mkdirprog -m$different_mode -p -- "$test_tmpdir" && {
|
||||
ls_ld_tmpdir_1=`ls -ld "$test_tmpdir"`
|
||||
test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1"
|
||||
}
|
||||
}
|
||||
then posix_mkdir=:
|
||||
fi
|
||||
rmdir "$tmpdir/a/b" "$tmpdir/a" "$tmpdir"
|
||||
else
|
||||
# Remove any dirs left behind by ancient mkdir implementations.
|
||||
rmdir ./$mkdir_mode ./-p ./-- "$tmpdir" 2>/dev/null
|
||||
fi
|
||||
trap '' 0;;
|
||||
esac
|
||||
|
||||
if
|
||||
$posix_mkdir && (
|
||||
umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir"
|
||||
)
|
||||
then :
|
||||
else
|
||||
|
||||
# mkdir does not conform to POSIX,
|
||||
# or it failed possibly due to a race condition. Create the
|
||||
# directory the slow way, step by step, checking for races as we go.
|
||||
|
||||
case $dstdir in
|
||||
/*) prefix='/';;
|
||||
[-=\(\)!]*) prefix='./';;
|
||||
*) prefix='';;
|
||||
esac
|
||||
|
||||
oIFS=$IFS
|
||||
IFS=/
|
||||
set -f
|
||||
set fnord $dstdir
|
||||
shift
|
||||
set +f
|
||||
IFS=$oIFS
|
||||
|
||||
prefixes=
|
||||
|
||||
for d
|
||||
do
|
||||
test X"$d" = X && continue
|
||||
|
||||
prefix=$prefix$d
|
||||
if test -d "$prefix"; then
|
||||
prefixes=
|
||||
else
|
||||
if $posix_mkdir; then
|
||||
(umask $mkdir_umask &&
|
||||
$doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break
|
||||
# Don't fail if two instances are running concurrently.
|
||||
test -d "$prefix" || exit 1
|
||||
else
|
||||
case $prefix in
|
||||
*\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;;
|
||||
*) qprefix=$prefix;;
|
||||
esac
|
||||
prefixes="$prefixes '$qprefix'"
|
||||
fi
|
||||
fi
|
||||
prefix=$prefix/
|
||||
done
|
||||
|
||||
if test -n "$prefixes"; then
|
||||
# Don't fail if two instances are running concurrently.
|
||||
(umask $mkdir_umask &&
|
||||
eval "\$doit_exec \$mkdirprog $prefixes") ||
|
||||
test -d "$dstdir" || exit 1
|
||||
obsolete_mkdir_used=true
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
if test -n "$dir_arg"; then
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dst"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } &&
|
||||
{ test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false ||
|
||||
test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1
|
||||
else
|
||||
|
||||
# Make a couple of temp file names in the proper directory.
|
||||
dsttmp=${dstdirslash}_inst.$$_
|
||||
rmtmp=${dstdirslash}_rm.$$_
|
||||
|
||||
# Trap to clean up those temp files at exit.
|
||||
trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
|
||||
|
||||
# Copy the file name to the temp name.
|
||||
(umask $cp_umask &&
|
||||
{ test -z "$stripcmd" || {
|
||||
# Create $dsttmp read-write so that cp doesn't create it read-only,
|
||||
# which would cause strip to fail.
|
||||
if test -z "$doit"; then
|
||||
: >"$dsttmp" # No need to fork-exec 'touch'.
|
||||
else
|
||||
$doit touch "$dsttmp"
|
||||
fi
|
||||
}
|
||||
} &&
|
||||
$doit_exec $cpprog "$src" "$dsttmp") &&
|
||||
|
||||
# and set any options; do chmod last to preserve setuid bits.
|
||||
#
|
||||
# If any of these fail, we abort the whole thing. If we want to
|
||||
# ignore errors from any of these, just make sure not to ignore
|
||||
# errors from the above "$doit $cpprog $src $dsttmp" command.
|
||||
#
|
||||
{ test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } &&
|
||||
{ test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } &&
|
||||
{ test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } &&
|
||||
{ test -z "$chmodcmd" || $doit $chmodcmd $mode "$dsttmp"; } &&
|
||||
|
||||
# If -C, don't bother to copy if it wouldn't change the file.
|
||||
if $copy_on_change &&
|
||||
old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` &&
|
||||
new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` &&
|
||||
set -f &&
|
||||
set X $old && old=:$2:$4:$5:$6 &&
|
||||
set X $new && new=:$2:$4:$5:$6 &&
|
||||
set +f &&
|
||||
test "$old" = "$new" &&
|
||||
$cmpprog "$dst" "$dsttmp" >/dev/null 2>&1
|
||||
then
|
||||
rm -f "$dsttmp"
|
||||
else
|
||||
# If $backupsuffix is set, and the file being installed
|
||||
# already exists, attempt a backup. Don't worry if it fails,
|
||||
# e.g., if mv doesn't support -f.
|
||||
if test -n "$backupsuffix" && test -f "$dst"; then
|
||||
$doit $mvcmd -f "$dst" "$dst$backupsuffix" 2>/dev/null
|
||||
fi
|
||||
|
||||
# Rename the file to the real destination.
|
||||
$doit $mvcmd -f "$dsttmp" "$dst" 2>/dev/null ||
|
||||
|
||||
# The rename failed, perhaps because mv can't rename something else
|
||||
# to itself, or perhaps because mv is so ancient that it does not
|
||||
# support -f.
|
||||
{
|
||||
# Now remove or move aside any old file at destination location.
|
||||
# We try this two ways since rm can't unlink itself on some
|
||||
# systems and the destination file might be busy for other
|
||||
# reasons. In this case, the final cleanup might fail but the new
|
||||
# file should still install successfully.
|
||||
{
|
||||
test ! -f "$dst" ||
|
||||
$doit $rmcmd "$dst" 2>/dev/null ||
|
||||
{ $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null &&
|
||||
{ $doit $rmcmd "$rmtmp" 2>/dev/null; :; }
|
||||
} ||
|
||||
{ echo "$0: cannot unlink or rename $dst" >&2
|
||||
(exit 1); exit 1
|
||||
}
|
||||
} &&
|
||||
|
||||
# Now rename the file to the real destination.
|
||||
$doit $mvcmd "$dsttmp" "$dst"
|
||||
}
|
||||
fi || exit 1
|
||||
|
||||
trap '' 0
|
||||
fi
|
||||
done
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
Executable
+11943
File diff suppressed because it is too large
Load Diff
+11437
File diff suppressed because it is too large
Load Diff
Vendored
+8399
File diff suppressed because it is too large
Load Diff
Vendored
+437
@@ -0,0 +1,437 @@
|
||||
# Helper functions for option handling. -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2009, 2011-2019, 2021-2022 Free
|
||||
# Software Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 8 ltoptions.m4
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])])
|
||||
|
||||
|
||||
# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME)
|
||||
# ------------------------------------------
|
||||
m4_define([_LT_MANGLE_OPTION],
|
||||
[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])])
|
||||
|
||||
|
||||
# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME)
|
||||
# ---------------------------------------
|
||||
# Set option OPTION-NAME for macro MACRO-NAME, and if there is a
|
||||
# matching handler defined, dispatch to it. Other OPTION-NAMEs are
|
||||
# saved as a flag.
|
||||
m4_define([_LT_SET_OPTION],
|
||||
[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl
|
||||
m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]),
|
||||
_LT_MANGLE_DEFUN([$1], [$2]),
|
||||
[m4_warning([Unknown $1 option '$2'])])[]dnl
|
||||
])
|
||||
|
||||
|
||||
# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET])
|
||||
# ------------------------------------------------------------
|
||||
# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
|
||||
m4_define([_LT_IF_OPTION],
|
||||
[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])])
|
||||
|
||||
|
||||
# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET)
|
||||
# -------------------------------------------------------
|
||||
# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME
|
||||
# are set.
|
||||
m4_define([_LT_UNLESS_OPTIONS],
|
||||
[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||
[m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option),
|
||||
[m4_define([$0_found])])])[]dnl
|
||||
m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3
|
||||
])[]dnl
|
||||
])
|
||||
|
||||
|
||||
# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST)
|
||||
# ----------------------------------------
|
||||
# OPTION-LIST is a space-separated list of Libtool options associated
|
||||
# with MACRO-NAME. If any OPTION has a matching handler declared with
|
||||
# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about
|
||||
# the unknown option and exit.
|
||||
m4_defun([_LT_SET_OPTIONS],
|
||||
[# Set options
|
||||
m4_foreach([_LT_Option], m4_split(m4_normalize([$2])),
|
||||
[_LT_SET_OPTION([$1], _LT_Option)])
|
||||
|
||||
m4_if([$1],[LT_INIT],[
|
||||
dnl
|
||||
dnl Simply set some default values (i.e off) if boolean options were not
|
||||
dnl specified:
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no
|
||||
])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no
|
||||
])
|
||||
dnl
|
||||
dnl If no reference was made to various pairs of opposing options, then
|
||||
dnl we run the default mode handler for the pair. For example, if neither
|
||||
dnl 'shared' nor 'disable-shared' was passed, we enable building of shared
|
||||
dnl archives by default:
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install],
|
||||
[_LT_ENABLE_FAST_INSTALL])
|
||||
_LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4],
|
||||
[_LT_WITH_AIX_SONAME([aix])])
|
||||
])
|
||||
])# _LT_SET_OPTIONS
|
||||
|
||||
|
||||
## --------------------------------- ##
|
||||
## Macros to handle LT_INIT options. ##
|
||||
## --------------------------------- ##
|
||||
|
||||
# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME)
|
||||
# -----------------------------------------
|
||||
m4_define([_LT_MANGLE_DEFUN],
|
||||
[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])])
|
||||
|
||||
|
||||
# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE)
|
||||
# -----------------------------------------------
|
||||
m4_define([LT_OPTION_DEFINE],
|
||||
[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl
|
||||
])# LT_OPTION_DEFINE
|
||||
|
||||
|
||||
# dlopen
|
||||
# ------
|
||||
LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes
|
||||
])
|
||||
|
||||
AU_DEFUN([AC_LIBTOOL_DLOPEN],
|
||||
[_LT_SET_OPTION([LT_INIT], [dlopen])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'dlopen' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], [])
|
||||
|
||||
|
||||
# win32-dll
|
||||
# ---------
|
||||
# Declare package support for building win32 dll's.
|
||||
LT_OPTION_DEFINE([LT_INIT], [win32-dll],
|
||||
[enable_win32_dll=yes
|
||||
|
||||
case $host in
|
||||
*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*)
|
||||
AC_CHECK_TOOL(AS, as, false)
|
||||
AC_CHECK_TOOL(DLLTOOL, dlltool, false)
|
||||
AC_CHECK_TOOL(OBJDUMP, objdump, false)
|
||||
;;
|
||||
esac
|
||||
|
||||
test -z "$AS" && AS=as
|
||||
_LT_DECL([], [AS], [1], [Assembler program])dnl
|
||||
|
||||
test -z "$DLLTOOL" && DLLTOOL=dlltool
|
||||
_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl
|
||||
|
||||
test -z "$OBJDUMP" && OBJDUMP=objdump
|
||||
_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl
|
||||
])# win32-dll
|
||||
|
||||
AU_DEFUN([AC_LIBTOOL_WIN32_DLL],
|
||||
[AC_REQUIRE([AC_CANONICAL_HOST])dnl
|
||||
_LT_SET_OPTION([LT_INIT], [win32-dll])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'win32-dll' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], [])
|
||||
|
||||
|
||||
# _LT_ENABLE_SHARED([DEFAULT])
|
||||
# ----------------------------
|
||||
# implement the --enable-shared flag, and supports the 'shared' and
|
||||
# 'disable-shared' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_SHARED],
|
||||
[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([shared],
|
||||
[AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@],
|
||||
[build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_shared=yes ;;
|
||||
no) enable_shared=no ;;
|
||||
*)
|
||||
enable_shared=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_shared=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_shared=]_LT_ENABLE_SHARED_DEFAULT)
|
||||
|
||||
_LT_DECL([build_libtool_libs], [enable_shared], [0],
|
||||
[Whether or not to build shared libraries])
|
||||
])# _LT_ENABLE_SHARED
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])])
|
||||
|
||||
# Old names:
|
||||
AC_DEFUN([AC_ENABLE_SHARED],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared])
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_DISABLE_SHARED],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-shared])
|
||||
])
|
||||
|
||||
AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)])
|
||||
AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AM_ENABLE_SHARED], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_SHARED], [])
|
||||
|
||||
|
||||
|
||||
# _LT_ENABLE_STATIC([DEFAULT])
|
||||
# ----------------------------
|
||||
# implement the --enable-static flag, and support the 'static' and
|
||||
# 'disable-static' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_STATIC],
|
||||
[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([static],
|
||||
[AS_HELP_STRING([--enable-static@<:@=PKGS@:>@],
|
||||
[build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_static=yes ;;
|
||||
no) enable_static=no ;;
|
||||
*)
|
||||
enable_static=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_static=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_static=]_LT_ENABLE_STATIC_DEFAULT)
|
||||
|
||||
_LT_DECL([build_old_libs], [enable_static], [0],
|
||||
[Whether or not to build static libraries])
|
||||
])# _LT_ENABLE_STATIC
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])])
|
||||
|
||||
# Old names:
|
||||
AC_DEFUN([AC_ENABLE_STATIC],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static])
|
||||
])
|
||||
|
||||
AC_DEFUN([AC_DISABLE_STATIC],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-static])
|
||||
])
|
||||
|
||||
AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)])
|
||||
AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AM_ENABLE_STATIC], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_STATIC], [])
|
||||
|
||||
|
||||
|
||||
# _LT_ENABLE_FAST_INSTALL([DEFAULT])
|
||||
# ----------------------------------
|
||||
# implement the --enable-fast-install flag, and support the 'fast-install'
|
||||
# and 'disable-fast-install' LT_INIT options.
|
||||
# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'.
|
||||
m4_define([_LT_ENABLE_FAST_INSTALL],
|
||||
[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl
|
||||
AC_ARG_ENABLE([fast-install],
|
||||
[AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@],
|
||||
[optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])],
|
||||
[p=${PACKAGE-default}
|
||||
case $enableval in
|
||||
yes) enable_fast_install=yes ;;
|
||||
no) enable_fast_install=no ;;
|
||||
*)
|
||||
enable_fast_install=no
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for pkg in $enableval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$pkg" = "X$p"; then
|
||||
enable_fast_install=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT)
|
||||
|
||||
_LT_DECL([fast_install], [enable_fast_install], [0],
|
||||
[Whether or not to optimize for fast installation])dnl
|
||||
])# _LT_ENABLE_FAST_INSTALL
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])])
|
||||
|
||||
# Old names:
|
||||
AU_DEFUN([AC_ENABLE_FAST_INSTALL],
|
||||
[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||
the 'fast-install' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
AU_DEFUN([AC_DISABLE_FAST_INSTALL],
|
||||
[_LT_SET_OPTION([LT_INIT], [disable-fast-install])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you put
|
||||
the 'disable-fast-install' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], [])
|
||||
dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], [])
|
||||
|
||||
|
||||
# _LT_WITH_AIX_SONAME([DEFAULT])
|
||||
# ----------------------------------
|
||||
# implement the --with-aix-soname flag, and support the `aix-soname=aix'
|
||||
# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT
|
||||
# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'.
|
||||
m4_define([_LT_WITH_AIX_SONAME],
|
||||
[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl
|
||||
shared_archive_member_spec=
|
||||
case $host,$enable_shared in
|
||||
power*-*-aix[[5-9]]*,yes)
|
||||
AC_MSG_CHECKING([which variant of shared library versioning to provide])
|
||||
AC_ARG_WITH([aix-soname],
|
||||
[AS_HELP_STRING([--with-aix-soname=aix|svr4|both],
|
||||
[shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])],
|
||||
[case $withval in
|
||||
aix|svr4|both)
|
||||
;;
|
||||
*)
|
||||
AC_MSG_ERROR([Unknown argument to --with-aix-soname])
|
||||
;;
|
||||
esac
|
||||
lt_cv_with_aix_soname=$with_aix_soname],
|
||||
[AC_CACHE_VAL([lt_cv_with_aix_soname],
|
||||
[lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT)
|
||||
with_aix_soname=$lt_cv_with_aix_soname])
|
||||
AC_MSG_RESULT([$with_aix_soname])
|
||||
if test aix != "$with_aix_soname"; then
|
||||
# For the AIX way of multilib, we name the shared archive member
|
||||
# based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
|
||||
# and 'shr.imp' or 'shr_64.imp', respectively, for the Import File.
|
||||
# Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag,
|
||||
# the AIX toolchain works better with OBJECT_MODE set (default 32).
|
||||
if test 64 = "${OBJECT_MODE-32}"; then
|
||||
shared_archive_member_spec=shr_64
|
||||
else
|
||||
shared_archive_member_spec=shr
|
||||
fi
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
with_aix_soname=aix
|
||||
;;
|
||||
esac
|
||||
|
||||
_LT_DECL([], [shared_archive_member_spec], [0],
|
||||
[Shared archive member basename, for filename based shared library versioning on AIX])dnl
|
||||
])# _LT_WITH_AIX_SONAME
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])])
|
||||
|
||||
|
||||
# _LT_WITH_PIC([MODE])
|
||||
# --------------------
|
||||
# implement the --with-pic flag, and support the 'pic-only' and 'no-pic'
|
||||
# LT_INIT options.
|
||||
# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'.
|
||||
m4_define([_LT_WITH_PIC],
|
||||
[AC_ARG_WITH([pic],
|
||||
[AS_HELP_STRING([--with-pic@<:@=PKGS@:>@],
|
||||
[try to use only PIC/non-PIC objects @<:@default=use both@:>@])],
|
||||
[lt_p=${PACKAGE-default}
|
||||
case $withval in
|
||||
yes|no) pic_mode=$withval ;;
|
||||
*)
|
||||
pic_mode=default
|
||||
# Look at the argument we got. We use all the common list separators.
|
||||
lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR,
|
||||
for lt_pkg in $withval; do
|
||||
IFS=$lt_save_ifs
|
||||
if test "X$lt_pkg" = "X$lt_p"; then
|
||||
pic_mode=yes
|
||||
fi
|
||||
done
|
||||
IFS=$lt_save_ifs
|
||||
;;
|
||||
esac],
|
||||
[pic_mode=m4_default([$1], [default])])
|
||||
|
||||
_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl
|
||||
])# _LT_WITH_PIC
|
||||
|
||||
LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])])
|
||||
LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])])
|
||||
|
||||
# Old name:
|
||||
AU_DEFUN([AC_LIBTOOL_PICMODE],
|
||||
[_LT_SET_OPTION([LT_INIT], [pic-only])
|
||||
AC_DIAGNOSE([obsolete],
|
||||
[$0: Remove this warning and the call to _LT_SET_OPTION when you
|
||||
put the 'pic-only' option into LT_INIT's first parameter.])
|
||||
])
|
||||
|
||||
dnl aclocal-1.4 backwards compatibility:
|
||||
dnl AC_DEFUN([AC_LIBTOOL_PICMODE], [])
|
||||
|
||||
## ----------------- ##
|
||||
## LTDL_INIT Options ##
|
||||
## ----------------- ##
|
||||
|
||||
m4_define([_LTDL_MODE], [])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive],
|
||||
[m4_define([_LTDL_MODE], [nonrecursive])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [recursive],
|
||||
[m4_define([_LTDL_MODE], [recursive])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [subproject],
|
||||
[m4_define([_LTDL_MODE], [subproject])])
|
||||
|
||||
m4_define([_LTDL_TYPE], [])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [installable],
|
||||
[m4_define([_LTDL_TYPE], [installable])])
|
||||
LT_OPTION_DEFINE([LTDL_INIT], [convenience],
|
||||
[m4_define([_LTDL_TYPE], [convenience])])
|
||||
Vendored
+124
@@ -0,0 +1,124 @@
|
||||
# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007-2008, 2011-2019, 2021-2022 Free Software
|
||||
# Foundation, Inc.
|
||||
# Written by Gary V. Vaughan, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 6 ltsugar.m4
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])])
|
||||
|
||||
|
||||
# lt_join(SEP, ARG1, [ARG2...])
|
||||
# -----------------------------
|
||||
# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their
|
||||
# associated separator.
|
||||
# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier
|
||||
# versions in m4sugar had bugs.
|
||||
m4_define([lt_join],
|
||||
[m4_if([$#], [1], [],
|
||||
[$#], [2], [[$2]],
|
||||
[m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])])
|
||||
m4_define([_lt_join],
|
||||
[m4_if([$#$2], [2], [],
|
||||
[m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])])
|
||||
|
||||
|
||||
# lt_car(LIST)
|
||||
# lt_cdr(LIST)
|
||||
# ------------
|
||||
# Manipulate m4 lists.
|
||||
# These macros are necessary as long as will still need to support
|
||||
# Autoconf-2.59, which quotes differently.
|
||||
m4_define([lt_car], [[$1]])
|
||||
m4_define([lt_cdr],
|
||||
[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])],
|
||||
[$#], 1, [],
|
||||
[m4_dquote(m4_shift($@))])])
|
||||
m4_define([lt_unquote], $1)
|
||||
|
||||
|
||||
# lt_append(MACRO-NAME, STRING, [SEPARATOR])
|
||||
# ------------------------------------------
|
||||
# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'.
|
||||
# Note that neither SEPARATOR nor STRING are expanded; they are appended
|
||||
# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked).
|
||||
# No SEPARATOR is output if MACRO-NAME was previously undefined (different
|
||||
# than defined and empty).
|
||||
#
|
||||
# This macro is needed until we can rely on Autoconf 2.62, since earlier
|
||||
# versions of m4sugar mistakenly expanded SEPARATOR but not STRING.
|
||||
m4_define([lt_append],
|
||||
[m4_define([$1],
|
||||
m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])])
|
||||
|
||||
|
||||
|
||||
# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...])
|
||||
# ----------------------------------------------------------
|
||||
# Produce a SEP delimited list of all paired combinations of elements of
|
||||
# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list
|
||||
# has the form PREFIXmINFIXSUFFIXn.
|
||||
# Needed until we can rely on m4_combine added in Autoconf 2.62.
|
||||
m4_define([lt_combine],
|
||||
[m4_if(m4_eval([$# > 3]), [1],
|
||||
[m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl
|
||||
[[m4_foreach([_Lt_prefix], [$2],
|
||||
[m4_foreach([_Lt_suffix],
|
||||
]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[,
|
||||
[_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])])
|
||||
|
||||
|
||||
# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ])
|
||||
# -----------------------------------------------------------------------
|
||||
# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited
|
||||
# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ.
|
||||
m4_define([lt_if_append_uniq],
|
||||
[m4_ifdef([$1],
|
||||
[m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1],
|
||||
[lt_append([$1], [$2], [$3])$4],
|
||||
[$5])],
|
||||
[lt_append([$1], [$2], [$3])$4])])
|
||||
|
||||
|
||||
# lt_dict_add(DICT, KEY, VALUE)
|
||||
# -----------------------------
|
||||
m4_define([lt_dict_add],
|
||||
[m4_define([$1($2)], [$3])])
|
||||
|
||||
|
||||
# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE)
|
||||
# --------------------------------------------
|
||||
m4_define([lt_dict_add_subkey],
|
||||
[m4_define([$1($2:$3)], [$4])])
|
||||
|
||||
|
||||
# lt_dict_fetch(DICT, KEY, [SUBKEY])
|
||||
# ----------------------------------
|
||||
m4_define([lt_dict_fetch],
|
||||
[m4_ifval([$3],
|
||||
m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]),
|
||||
m4_ifdef([$1($2)], [m4_defn([$1($2)])]))])
|
||||
|
||||
|
||||
# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE])
|
||||
# -----------------------------------------------------------------
|
||||
m4_define([lt_if_dict_fetch],
|
||||
[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4],
|
||||
[$5],
|
||||
[$6])])
|
||||
|
||||
|
||||
# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...])
|
||||
# --------------------------------------------------------------
|
||||
m4_define([lt_dict_filter],
|
||||
[m4_if([$5], [], [],
|
||||
[lt_join(m4_quote(m4_default([$4], [[, ]])),
|
||||
lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]),
|
||||
[lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl
|
||||
])
|
||||
Vendored
+24
@@ -0,0 +1,24 @@
|
||||
# ltversion.m4 -- version numbers -*- Autoconf -*-
|
||||
#
|
||||
# Copyright (C) 2004, 2011-2019, 2021-2022 Free Software Foundation,
|
||||
# Inc.
|
||||
# Written by Scott James Remnant, 2004
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# @configure_input@
|
||||
|
||||
# serial 4249 ltversion.m4
|
||||
# This file is part of GNU Libtool
|
||||
|
||||
m4_define([LT_PACKAGE_VERSION], [2.4.7.4-1ec8f-dirty])
|
||||
m4_define([LT_PACKAGE_REVISION], [2.4.7.4])
|
||||
|
||||
AC_DEFUN([LTVERSION_VERSION],
|
||||
[macro_version='2.4.7.4-1ec8f-dirty'
|
||||
macro_revision='2.4.7.4'
|
||||
_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?])
|
||||
_LT_DECL(, macro_revision, 0)
|
||||
])
|
||||
Vendored
+99
@@ -0,0 +1,99 @@
|
||||
# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*-
|
||||
#
|
||||
# Copyright (C) 2004-2005, 2007, 2009, 2011-2019, 2021-2022 Free
|
||||
# Software Foundation, Inc.
|
||||
# Written by Scott James Remnant, 2004.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation gives
|
||||
# unlimited permission to copy and/or distribute it, with or without
|
||||
# modifications, as long as this notice is preserved.
|
||||
|
||||
# serial 5 lt~obsolete.m4
|
||||
|
||||
# These exist entirely to fool aclocal when bootstrapping libtool.
|
||||
#
|
||||
# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN),
|
||||
# which have later been changed to m4_define as they aren't part of the
|
||||
# exported API, or moved to Autoconf or Automake where they belong.
|
||||
#
|
||||
# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN
|
||||
# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us
|
||||
# using a macro with the same name in our local m4/libtool.m4 it'll
|
||||
# pull the old libtool.m4 in (it doesn't see our shiny new m4_define
|
||||
# and doesn't know about Autoconf macros at all.)
|
||||
#
|
||||
# So we provide this file, which has a silly filename so it's always
|
||||
# included after everything else. This provides aclocal with the
|
||||
# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything
|
||||
# because those macros already exist, or will be overwritten later.
|
||||
# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6.
|
||||
#
|
||||
# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here.
|
||||
# Yes, that means every name once taken will need to remain here until
|
||||
# we give up compatibility with versions before 1.7, at which point
|
||||
# we need to keep only those names which we still refer to.
|
||||
|
||||
# This is to help aclocal find these macros, as it can't see m4_define.
|
||||
AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])])
|
||||
|
||||
m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])])
|
||||
m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])])
|
||||
m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])])
|
||||
m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])])
|
||||
m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])])
|
||||
m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])])
|
||||
m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])])
|
||||
m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])])
|
||||
m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])])
|
||||
m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])])
|
||||
m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])])
|
||||
m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])])
|
||||
m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])])
|
||||
m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])])
|
||||
m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])])
|
||||
m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])])
|
||||
m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])])
|
||||
m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])])
|
||||
m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])])
|
||||
m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])])
|
||||
m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])])
|
||||
m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])])
|
||||
m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])])
|
||||
m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])])
|
||||
m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])])
|
||||
m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])])
|
||||
m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])])
|
||||
m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])])
|
||||
m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])])
|
||||
m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])])
|
||||
m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])])
|
||||
m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])])
|
||||
m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])])
|
||||
m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])])
|
||||
m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])])
|
||||
m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])])
|
||||
m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])])
|
||||
m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])])
|
||||
m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])])
|
||||
m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])])
|
||||
m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])])
|
||||
m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])])
|
||||
m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])])
|
||||
m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])])
|
||||
Executable
+215
@@ -0,0 +1,215 @@
|
||||
#! /bin/sh
|
||||
# Common wrapper for a few potentially missing GNU programs.
|
||||
|
||||
scriptversion=2018-03-07.03; # UTC
|
||||
|
||||
# Copyright (C) 1996-2021 Free Software Foundation, Inc.
|
||||
# Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
|
||||
|
||||
# This program 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.
|
||||
|
||||
# This program 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 this program. If not, see <https://www.gnu.org/licenses/>.
|
||||
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
if test $# -eq 0; then
|
||||
echo 1>&2 "Try '$0 --help' for more information"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
case $1 in
|
||||
|
||||
--is-lightweight)
|
||||
# Used by our autoconf macros to check whether the available missing
|
||||
# script is modern enough.
|
||||
exit 0
|
||||
;;
|
||||
|
||||
--run)
|
||||
# Back-compat with the calling convention used by older automake.
|
||||
shift
|
||||
;;
|
||||
|
||||
-h|--h|--he|--hel|--help)
|
||||
echo "\
|
||||
$0 [OPTION]... PROGRAM [ARGUMENT]...
|
||||
|
||||
Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due
|
||||
to PROGRAM being missing or too old.
|
||||
|
||||
Options:
|
||||
-h, --help display this help and exit
|
||||
-v, --version output version information and exit
|
||||
|
||||
Supported PROGRAM values:
|
||||
aclocal autoconf autoheader autom4te automake makeinfo
|
||||
bison yacc flex lex help2man
|
||||
|
||||
Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and
|
||||
'g' are ignored when checking the name.
|
||||
|
||||
Send bug reports to <bug-automake@gnu.org>."
|
||||
exit $?
|
||||
;;
|
||||
|
||||
-v|--v|--ve|--ver|--vers|--versi|--versio|--version)
|
||||
echo "missing $scriptversion (GNU Automake)"
|
||||
exit $?
|
||||
;;
|
||||
|
||||
-*)
|
||||
echo 1>&2 "$0: unknown '$1' option"
|
||||
echo 1>&2 "Try '$0 --help' for more information"
|
||||
exit 1
|
||||
;;
|
||||
|
||||
esac
|
||||
|
||||
# Run the given program, remember its exit status.
|
||||
"$@"; st=$?
|
||||
|
||||
# If it succeeded, we are done.
|
||||
test $st -eq 0 && exit 0
|
||||
|
||||
# Also exit now if we it failed (or wasn't found), and '--version' was
|
||||
# passed; such an option is passed most likely to detect whether the
|
||||
# program is present and works.
|
||||
case $2 in --version|--help) exit $st;; esac
|
||||
|
||||
# Exit code 63 means version mismatch. This often happens when the user
|
||||
# tries to use an ancient version of a tool on a file that requires a
|
||||
# minimum version.
|
||||
if test $st -eq 63; then
|
||||
msg="probably too old"
|
||||
elif test $st -eq 127; then
|
||||
# Program was missing.
|
||||
msg="missing on your system"
|
||||
else
|
||||
# Program was found and executed, but failed. Give up.
|
||||
exit $st
|
||||
fi
|
||||
|
||||
perl_URL=https://www.perl.org/
|
||||
flex_URL=https://github.com/westes/flex
|
||||
gnu_software_URL=https://www.gnu.org/software
|
||||
|
||||
program_details ()
|
||||
{
|
||||
case $1 in
|
||||
aclocal|automake)
|
||||
echo "The '$1' program is part of the GNU Automake package:"
|
||||
echo "<$gnu_software_URL/automake>"
|
||||
echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:"
|
||||
echo "<$gnu_software_URL/autoconf>"
|
||||
echo "<$gnu_software_URL/m4/>"
|
||||
echo "<$perl_URL>"
|
||||
;;
|
||||
autoconf|autom4te|autoheader)
|
||||
echo "The '$1' program is part of the GNU Autoconf package:"
|
||||
echo "<$gnu_software_URL/autoconf/>"
|
||||
echo "It also requires GNU m4 and Perl in order to run:"
|
||||
echo "<$gnu_software_URL/m4/>"
|
||||
echo "<$perl_URL>"
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
give_advice ()
|
||||
{
|
||||
# Normalize program name to check for.
|
||||
normalized_program=`echo "$1" | sed '
|
||||
s/^gnu-//; t
|
||||
s/^gnu//; t
|
||||
s/^g//; t'`
|
||||
|
||||
printf '%s\n' "'$1' is $msg."
|
||||
|
||||
configure_deps="'configure.ac' or m4 files included by 'configure.ac'"
|
||||
case $normalized_program in
|
||||
autoconf*)
|
||||
echo "You should only need it if you modified 'configure.ac',"
|
||||
echo "or m4 files included by it."
|
||||
program_details 'autoconf'
|
||||
;;
|
||||
autoheader*)
|
||||
echo "You should only need it if you modified 'acconfig.h' or"
|
||||
echo "$configure_deps."
|
||||
program_details 'autoheader'
|
||||
;;
|
||||
automake*)
|
||||
echo "You should only need it if you modified 'Makefile.am' or"
|
||||
echo "$configure_deps."
|
||||
program_details 'automake'
|
||||
;;
|
||||
aclocal*)
|
||||
echo "You should only need it if you modified 'acinclude.m4' or"
|
||||
echo "$configure_deps."
|
||||
program_details 'aclocal'
|
||||
;;
|
||||
autom4te*)
|
||||
echo "You might have modified some maintainer files that require"
|
||||
echo "the 'autom4te' program to be rebuilt."
|
||||
program_details 'autom4te'
|
||||
;;
|
||||
bison*|yacc*)
|
||||
echo "You should only need it if you modified a '.y' file."
|
||||
echo "You may want to install the GNU Bison package:"
|
||||
echo "<$gnu_software_URL/bison/>"
|
||||
;;
|
||||
lex*|flex*)
|
||||
echo "You should only need it if you modified a '.l' file."
|
||||
echo "You may want to install the Fast Lexical Analyzer package:"
|
||||
echo "<$flex_URL>"
|
||||
;;
|
||||
help2man*)
|
||||
echo "You should only need it if you modified a dependency" \
|
||||
"of a man page."
|
||||
echo "You may want to install the GNU Help2man package:"
|
||||
echo "<$gnu_software_URL/help2man/>"
|
||||
;;
|
||||
makeinfo*)
|
||||
echo "You should only need it if you modified a '.texi' file, or"
|
||||
echo "any other file indirectly affecting the aspect of the manual."
|
||||
echo "You might want to install the Texinfo package:"
|
||||
echo "<$gnu_software_URL/texinfo/>"
|
||||
echo "The spurious makeinfo call might also be the consequence of"
|
||||
echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might"
|
||||
echo "want to install GNU make:"
|
||||
echo "<$gnu_software_URL/make/>"
|
||||
;;
|
||||
*)
|
||||
echo "You might have modified some files without having the proper"
|
||||
echo "tools for further handling them. Check the 'README' file, it"
|
||||
echo "often tells you about the needed prerequisites for installing"
|
||||
echo "this package. You may also peek at any GNU archive site, in"
|
||||
echo "case some other package contains this missing '$1' program."
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
give_advice "$1" | sed -e '1s/^/WARNING: /' \
|
||||
-e '2,$s/^/ /' >&2
|
||||
|
||||
# Propagate the correct exit status (expected to be 127 for a program
|
||||
# not found, 63 for a program that failed due to version mismatch).
|
||||
exit $st
|
||||
|
||||
# Local variables:
|
||||
# eval: (add-hook 'before-save-hook 'time-stamp)
|
||||
# time-stamp-start: "scriptversion="
|
||||
# time-stamp-format: "%:y-%02m-%02d.%02H"
|
||||
# time-stamp-time-zone: "UTC0"
|
||||
# time-stamp-end: "; # UTC"
|
||||
# End:
|
||||
@@ -0,0 +1,249 @@
|
||||
#include "msg.h"
|
||||
|
||||
static void
|
||||
ezmq_free_message(void *data, void *hint)
|
||||
{
|
||||
free(data);
|
||||
}
|
||||
|
||||
/**
|
||||
Return a copy of the data contained in VAL. VAL is either a string or vector
|
||||
of bytes. SIZE will be updated with the number of bytes contained in VAL. In
|
||||
the case that VAL is a vector, an `args-out-ouf-range` error is raised if
|
||||
the integers are not within range of a byte.
|
||||
*/
|
||||
static char *
|
||||
_ezmq_extract_message_data(emacs_value val, ptrdiff_t *size)
|
||||
{
|
||||
emacs_value type = TYPE(val);
|
||||
*size = 0;
|
||||
|
||||
if(EQ(type, Qstring)) {
|
||||
EZMQ_EXTRACT_STRING(content, clen, val);
|
||||
*size = clen;
|
||||
return content;
|
||||
} else if(EQ(type, Qvector)) {
|
||||
ptrdiff_t clen = VEC_LENGTH(val);
|
||||
char *content = ezmq_malloc(clen);
|
||||
ptrdiff_t i;
|
||||
|
||||
for(i = 0; !NONLOCAL_EXIT() && i < clen; i++) {
|
||||
EZMQ_EXTRACT_INT(byte, AREF(val, i));
|
||||
|
||||
if(0 <= byte && byte <= 255) {
|
||||
content[i] = (char)byte;
|
||||
} else {
|
||||
ezmq_args_out_of_range(INT(byte), CONS(INT(0), INT(255)));
|
||||
}
|
||||
}
|
||||
|
||||
*size = clen;
|
||||
return content;
|
||||
} else
|
||||
ezmq_wrong_type_argument(val, 2, Qstring, Qvector);
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message,
|
||||
"&optional DATA",
|
||||
"Initialize a ZMQ message.\n"
|
||||
"If DATA is non-nil, initialize the message using DATA.\n"
|
||||
"DATA can be either a string or a vector of byte integers.\n"
|
||||
"If DATA is nil, initialize an empty message.");
|
||||
emacs_value
|
||||
ezmq_message(emacs_value edata)
|
||||
{
|
||||
ezmq_obj_t *msg = ezmq_new_obj(EZMQ_MESSAGE, NULL);
|
||||
if(!NILP(edata)) {
|
||||
ptrdiff_t size = 0;
|
||||
char *data = _ezmq_extract_message_data(edata, &size);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_init_data(msg->obj,
|
||||
data,
|
||||
size,
|
||||
&ezmq_free_message,
|
||||
NULL));
|
||||
if(NONLOCAL_EXIT()) free(data);
|
||||
} else {
|
||||
EZMQ_CHECK_ERROR(zmq_msg_init(msg->obj));
|
||||
}
|
||||
if(NONLOCAL_EXIT()) ezmq_free_obj(msg);
|
||||
return ezmq_new_obj_ptr(msg);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_size, "MESSAGE", "Get the size of MESSAGE.");
|
||||
emacs_value
|
||||
ezmq_message_size(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
return INT(zmq_msg_size(msg->obj));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_data, "MESSAGE", "Get the data of MESSAGE.");
|
||||
emacs_value
|
||||
ezmq_message_data(emacs_value emessage)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
const char *content = zmq_msg_data(msg->obj);
|
||||
|
||||
if(content) {
|
||||
size_t size = zmq_msg_size(msg->obj);
|
||||
retval = STRING(content, size);
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_more, "MESSAGE", "Does MESSAGE have more parts?");
|
||||
emacs_value
|
||||
ezmq_message_more(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
int retval = zmq_msg_more(msg->obj);
|
||||
EZMQ_CHECK_ERROR(retval);
|
||||
return retval ? Qt : Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_copy, "MESSAGE", "Copy MESSAGE.");
|
||||
emacs_value
|
||||
ezmq_message_copy(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
ezmq_obj_t *dest = ezmq_new_obj(EZMQ_MESSAGE, NULL);
|
||||
zmq_msg_init(dest->obj);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_copy(dest->obj, msg->obj));
|
||||
return ezmq_new_obj_ptr(dest);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_move, "SRC DEST", "Move a message from SRC to DEST.");
|
||||
emacs_value
|
||||
ezmq_message_move(emacs_value esrc, emacs_value edest)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, esrc);
|
||||
EZMQ_EXTRACT_OBJ(dest, EZMQ_MESSAGE, edest);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_move(dest->obj, msg->obj));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_close, "MESSAGE", "Close a message");
|
||||
emacs_value
|
||||
ezmq_message_close(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_close(msg->obj));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_set, "MESSAGE PROPERTY VALUE", "Set a MESSAGE's PROPERTY to VALUE.");
|
||||
emacs_value
|
||||
ezmq_message_set(emacs_value emessage, emacs_value eproperty, emacs_value evalue)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_INT(property, eproperty);
|
||||
|
||||
switch(property) {
|
||||
case ZMQ_MORE:
|
||||
EZMQ_CHECK_ERROR(zmq_msg_set(msg->obj,
|
||||
property,
|
||||
!NILP(evalue)));
|
||||
break;
|
||||
default: {
|
||||
EZMQ_EXTRACT_INT(value, evalue);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_set(msg->obj, property, value));
|
||||
}
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_get, "MESSAGE PROPERTY", "Get a MESSAGE PROPERTY.");
|
||||
emacs_value
|
||||
ezmq_message_get(emacs_value emessage, emacs_value eproperty)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_INT(property, eproperty);
|
||||
int retval = zmq_msg_get(msg->obj, property);
|
||||
EZMQ_CHECK_ERROR(retval);
|
||||
if(property == ZMQ_MORE)
|
||||
return retval ? Qt : Qnil;
|
||||
else
|
||||
return INT(retval);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_recv, "MESSAGE SOCK &optional FLAGS",
|
||||
"Receive a MESSAGE from SOCK with additional FLAGS.\n"
|
||||
"MESSAGE should be an initialized message.");
|
||||
emacs_value
|
||||
ezmq_message_recv(emacs_value emessage, emacs_value esock, emacs_value eflags)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_OPTIONAL_INT(flags, eflags);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_recv(msg->obj, sock->obj, flags));
|
||||
return emessage;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_send, "MESSAGE SOCK &optional FLAGS",
|
||||
"Send a MESSAGE on SOCK with additional FLAGS.");
|
||||
emacs_value
|
||||
ezmq_message_send(emacs_value emessage, emacs_value esock, emacs_value eflags)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_OPTIONAL_INT(flags, eflags);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_send(msg->obj, sock->obj, flags));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_gets, "MESSAGE PROPERTY",
|
||||
"Get a MESSAGE's metadata PROPERTY.\n"
|
||||
"PROPERTY is a keyword and can only be one of those in\n"
|
||||
"`zmq-message-properties'.");
|
||||
emacs_value
|
||||
ezmq_message_gets(emacs_value emessage, emacs_value eproperty)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_STRING(property, plen, eproperty);
|
||||
const char *retval = zmq_msg_gets(msg->obj, property);
|
||||
free(property);
|
||||
EZMQ_CHECK_NULL_ERROR(retval);
|
||||
return STRING(retval, strlen(retval));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_routing_id, "MESSAGE", "Get the routing ID of MESSAGE.");
|
||||
emacs_value
|
||||
ezmq_message_routing_id(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
return INT(zmq_msg_routing_id(msg->obj));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_set_routing_id, "MESSAGE ID", "Set MESSAGE's routing ID.");
|
||||
emacs_value
|
||||
ezmq_message_set_routing_id(emacs_value emessage, emacs_value eid)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_INT(id, eid);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_set_routing_id(msg->obj, id));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_group, "MESSAGE", "Get MESSAGE's GROUP.");
|
||||
emacs_value
|
||||
ezmq_message_group(emacs_value emessage)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
const char *group = zmq_msg_group(msg->obj);
|
||||
EZMQ_CHECK_NULL_ERROR(group);
|
||||
return NONLOCAL_EXIT() ? Qnil : STRING(group, strlen(group));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_set_group, "MESSAGE GROUP", "Set MESSAGE's GROUP.");
|
||||
emacs_value
|
||||
ezmq_message_set_group(emacs_value emessage, emacs_value egroup)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emessage);
|
||||
EZMQ_EXTRACT_STRING(group, elen, egroup);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_set_group(msg->obj, group));
|
||||
return Qnil;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
#ifndef __MSG_H__
|
||||
#define __MSG_H__
|
||||
|
||||
#include "core.h"
|
||||
|
||||
EZMQ_FUN(ezmq_message, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_size, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_data, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_more, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_copy, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_move, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_close, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_set, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_get, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_recv, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_send, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_gets, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_routing_id, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_set_routing_id, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_group, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_set_group, emacs_value, emacs_value);
|
||||
|
||||
#endif /* __MSG_H__ */
|
||||
@@ -0,0 +1,392 @@
|
||||
#include "poll.h"
|
||||
|
||||
static void
|
||||
ezmq_invalid_poll_event(intmax_t event)
|
||||
{
|
||||
ezmq_args_out_of_range(INT(event),
|
||||
LIST(5,
|
||||
INTERN("or"),
|
||||
INTERN("zmq-POLLIN"),
|
||||
INTERN("zmq-POLLPRI"),
|
||||
INTERN("zmq-POLLOUT"),
|
||||
INTERN("zmq-POLLERR")));
|
||||
}
|
||||
|
||||
/**
|
||||
Extract a single poll event (ZMQ_POLLIN, ZMQ_POLLPRI, ZMQ_POLLOUT, ZMQ_POLLERR) from a
|
||||
Lisp integer.
|
||||
|
||||
|
||||
Signal an args-out-of-bounds error if the integer is not valid.
|
||||
*/
|
||||
static intmax_t
|
||||
ezmq_extract_poll_event(emacs_value val)
|
||||
{
|
||||
intmax_t event = EXTRACT_INT(val);
|
||||
if(NONLOCAL_EXIT()) return -1;
|
||||
if(event != ZMQ_POLLIN && event != ZMQ_POLLPRI &&
|
||||
event != ZMQ_POLLOUT && event != ZMQ_POLLERR) {
|
||||
ezmq_invalid_poll_event(event);
|
||||
return -1;
|
||||
}
|
||||
return event;
|
||||
}
|
||||
|
||||
/**
|
||||
Merge a list of poll events, i.e. take the bitwise or of a list of poll
|
||||
event integers.
|
||||
|
||||
|
||||
If the Lisp object passed to this function is not a list, signal a
|
||||
wrong-type-argument error.
|
||||
*/
|
||||
static intmax_t
|
||||
ezmq_merge_poll_events(emacs_value list)
|
||||
{
|
||||
intmax_t events = 0;
|
||||
if(EQ(TYPE(list), Qcons)) {
|
||||
while(!NILP(list)) {
|
||||
intmax_t event = ezmq_extract_poll_event(CAR(list));
|
||||
if(NONLOCAL_EXIT()) break;
|
||||
events |= event;
|
||||
list = CDR(list);
|
||||
}
|
||||
} else
|
||||
ezmq_wrong_type_argument(list, 1, Qlist);
|
||||
return events;
|
||||
}
|
||||
|
||||
/**
|
||||
Split the bitwise or of poll events into a list of poll events. This is so
|
||||
that in Emacs, you can simply call `member` on the resulting list to find
|
||||
out if an event occurred rather than using `logand`.
|
||||
*/
|
||||
static emacs_value
|
||||
ezmq_split_poll_events(int events)
|
||||
{
|
||||
emacs_value args[4];
|
||||
int i = -1;
|
||||
|
||||
if(events & ZMQ_POLLIN)
|
||||
args[++i] = Izmq_POLLIN;
|
||||
if(events & ZMQ_POLLPRI)
|
||||
args[++i] = Izmq_POLLPRI;
|
||||
if(events & ZMQ_POLLOUT)
|
||||
args[++i] = Izmq_POLLOUT;
|
||||
if(events & ZMQ_POLLERR)
|
||||
args[++i] = Izmq_POLLERR;
|
||||
|
||||
if(i == -1) ezmq_invalid_poll_event(events);
|
||||
return FUNCALL(Qlist, i + 1, args);
|
||||
}
|
||||
|
||||
/**
|
||||
Given a SOCK-OR-FD and a list of poll EVENTS, construct a zmq_pollitem_t.
|
||||
Store it in ITEM. A non-local exit is pending if a poll item could not be
|
||||
constructed.
|
||||
*/
|
||||
static void *
|
||||
ezmq_extract_pollitem(emacs_value sock_or_fd, emacs_value events, zmq_pollitem_t *item)
|
||||
{
|
||||
if(EQ(TYPE(sock_or_fd), Qinteger)) {
|
||||
EZMQ_EXTRACT_INT(fd, sock_or_fd);
|
||||
item->fd = fd;
|
||||
item->socket = NULL;
|
||||
} else {
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, sock_or_fd);
|
||||
item->socket = sock->obj;
|
||||
}
|
||||
item->events = (short)ezmq_merge_poll_events(events);
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/**
|
||||
Return (SOCK-OR-FD . SEVENTS) where SEVENTS is a list socket events.
|
||||
See ezmq_split_poll_events() for how SEVENTS is constructed from EVENTS.
|
||||
*/
|
||||
static emacs_value
|
||||
ezmq_make_pollitem(emacs_value sock_or_fd, int events)
|
||||
{
|
||||
emacs_value sevents = ezmq_split_poll_events(events);
|
||||
emacs_value item = CONS(sock_or_fd, sevents);
|
||||
return item;
|
||||
}
|
||||
|
||||
/**
|
||||
Return an array of zmq_pollitem_t objects constructed from LIST.
|
||||
LIST is a list of (SOCK-OR-FD . EVENTS) pairs from which to construct
|
||||
zmq_pollitem_t objects from. EVENTS can either be an integer or a list
|
||||
containing any of zmq-POLLIN, zmq-POLLOUT, or zmq-POLLERR.
|
||||
The returned array must be released by the called.
|
||||
*/
|
||||
static zmq_pollitem_t *
|
||||
ezmq_extract_pollitem_list(emacs_value list)
|
||||
{
|
||||
intmax_t len = LENGTH(list);
|
||||
zmq_pollitem_t *items = (zmq_pollitem_t *)ezmq_malloc(sizeof(zmq_pollitem_t)*len);
|
||||
intmax_t i;
|
||||
for(i = 0; i < len; i++) {
|
||||
emacs_value head = CAR(list);
|
||||
list = CDR(list);
|
||||
|
||||
if(NONLOCAL_EXIT()) break;
|
||||
|
||||
if(EQ(TYPE(head), Qcons) && EQ(TYPE(CDR(head)), Qcons))
|
||||
ezmq_extract_pollitem(CAR(head), CDR(head), &items[i]);
|
||||
else
|
||||
// TODO: The right error convention for wrong-type-argument
|
||||
ezmq_wrong_type_argument(head, 1, INTERN("consp"));
|
||||
}
|
||||
|
||||
if(NONLOCAL_EXIT()) free(items);
|
||||
return items;
|
||||
}
|
||||
|
||||
/**
|
||||
Return a list of (SOCK-OR-FD . EVENTS) pairs constructed from ITEMS.
|
||||
EITEMS is the original list of pairs that was given to ezmq_poll().
|
||||
NRECEIVED are the number of received events returned by zmq_poll(). NITEMS
|
||||
are the number of items in EITEMS.
|
||||
*/
|
||||
static emacs_value
|
||||
ezmq_make_pollitem_list(intmax_t nreceived, zmq_pollitem_t *items, emacs_value eitems, intmax_t nitems)
|
||||
{
|
||||
emacs_value ritems = Qnil;
|
||||
while(nreceived > 0) {
|
||||
nitems -= 1;
|
||||
|
||||
short events = items[nitems].revents;
|
||||
if(events != 0) {
|
||||
nreceived -= 1;
|
||||
|
||||
emacs_value eitem = FUNCALL(Qnth, 2, ((emacs_value []){INT(nitems), eitems}));
|
||||
ritems = CONS(ezmq_make_pollitem(CAR(eitem), events), ritems);
|
||||
}
|
||||
}
|
||||
return ritems;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poll, "ITEMS TIMEOUT",
|
||||
"Poll ITEMS until TIMEOUT.\n"
|
||||
"ITEMS is a list of cons cells of the form (SOCK-OR-FD . EVENTS)\n"
|
||||
"where EVENTS is a list of valid poll events. TIMEOUT is measured in\n"
|
||||
"milliseconds.");
|
||||
emacs_value
|
||||
ezmq_poll(emacs_value eitems, emacs_value etimeout)
|
||||
{
|
||||
EZMQ_EXTRACT_INT(timeout, etimeout);
|
||||
|
||||
emacs_value retval = Qnil;
|
||||
if(EQ(TYPE(eitems), Qcons)) {
|
||||
intmax_t nitems = LENGTH(eitems);
|
||||
zmq_pollitem_t *items = ezmq_extract_pollitem_list(eitems);
|
||||
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
intmax_t nreceived = zmq_poll(items, nitems, timeout);
|
||||
EZMQ_CHECK_ERROR(nreceived);
|
||||
|
||||
if(!NONLOCAL_EXIT())
|
||||
retval = ezmq_make_pollitem_list(nreceived, items, eitems, nitems);
|
||||
|
||||
free(items);
|
||||
}
|
||||
} else
|
||||
ezmq_wrong_type_argument(eitems, 1, INTERN("consp"));
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_new,
|
||||
"",
|
||||
"Create a new `zmq-poller' object.");
|
||||
emacs_value
|
||||
ezmq_poller_new(void)
|
||||
{
|
||||
void *poller = zmq_poller_new();
|
||||
EZMQ_CHECK_NULL_ERROR(poller);
|
||||
ezmq_debug("ezmq_poller_new()\n");
|
||||
return ezmq_new_obj_ptr(ezmq_new_obj(EZMQ_POLLER, poller));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_add,
|
||||
"POLLER SOCK-OR-FD EVENTS",
|
||||
"Listen for EVENTS on SOCK using POLLER.\n"
|
||||
"SOCK-OR-FD can either be a `zmq-socket' or a file descriptor.\n"
|
||||
"EVENTS can either be a list of events (one of `zmq-POLLIN',\n"
|
||||
"`zmq-POLLOUT', `zmq-POLLERR') or a bitwise-or of events.");
|
||||
emacs_value
|
||||
ezmq_poller_add(emacs_value epoller, emacs_value esock, emacs_value eevents)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
|
||||
short events;
|
||||
if(EQ(TYPE(eevents), Qcons))
|
||||
events = ezmq_merge_poll_events(eevents);
|
||||
else if(EQ(TYPE(eevents), Qinteger))
|
||||
events = EXTRACT_INT(eevents);
|
||||
else
|
||||
ezmq_wrong_type_argument(eevents, 1, INTERN("consp"));
|
||||
|
||||
if(EQ(TYPE(esock), Qinteger)) {
|
||||
EZMQ_EXTRACT_INT(fd, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_add_fd(poller->obj, fd, NULL, events));
|
||||
} else {
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_add(poller->obj, sock->obj, sock, events));
|
||||
// Keep track of sockets added to ensure they do not get garbage
|
||||
// collected
|
||||
ezmq_obj_set_val(poller, CONS(esock, ezmq_obj_get_val(poller)));
|
||||
}
|
||||
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_modify,
|
||||
"POLLER SOCK-OR-FD EVENTS",
|
||||
"Modify the EVENTS of SOCK-OR-FD that POLLER listens for.");
|
||||
emacs_value
|
||||
ezmq_poller_modify(emacs_value epoller, emacs_value esock, emacs_value eevents)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
|
||||
short events;
|
||||
if(EQ(TYPE(eevents), Qcons))
|
||||
events = ezmq_merge_poll_events(eevents);
|
||||
else if(EQ(TYPE(eevents), Qinteger))
|
||||
events = EXTRACT_INT(eevents);
|
||||
else
|
||||
ezmq_wrong_type_argument(eevents, 1, INTERN("consp"));
|
||||
|
||||
if(EQ(TYPE(esock), Qinteger)) {
|
||||
EZMQ_EXTRACT_INT(fd, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_modify_fd(poller->obj, fd, events));
|
||||
} else {
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_modify(poller->obj, sock->obj, events));
|
||||
}
|
||||
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_remove,
|
||||
"POLLER SOCK-OR-FD",
|
||||
"Remove SOCK-OR-FD from POLLER.");
|
||||
emacs_value
|
||||
ezmq_poller_remove(emacs_value epoller, emacs_value esock)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
if(EQ(TYPE(esock), Qinteger)) {
|
||||
EZMQ_EXTRACT_INT(fd, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_remove_fd(poller->obj, fd));
|
||||
} else {
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_remove(poller->obj, sock->obj));
|
||||
emacs_value new_val = FUNCALL(INTERN("delq"), 2,
|
||||
((emacs_value []){esock, ezmq_obj_get_val(poller)}));
|
||||
ezmq_obj_set_val(poller, new_val);
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_destroy,
|
||||
"POLLER",
|
||||
"Destroy POLLER");
|
||||
emacs_value
|
||||
ezmq_poller_destroy(emacs_value epoller)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
EZMQ_CHECK_ERROR(zmq_poller_destroy(&poller->obj));
|
||||
ezmq_obj_set_val(poller, NULL);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
/**
|
||||
Return the socket or file descriptor contained in EVENT as an Emacs value.
|
||||
|
||||
If EVENT has a socket, the socket from EVENT is matched to one of the
|
||||
sockets in POLLER's list of sockets and returned. Otherwise, the file
|
||||
descriptor is returned.
|
||||
*/
|
||||
static emacs_value
|
||||
ezmq_get_poll_trigger(ezmq_obj_t *poller, zmq_poller_event_t event)
|
||||
{
|
||||
emacs_value trigger = Qnil;
|
||||
|
||||
if(NONLOCAL_EXIT()) return NULL;
|
||||
|
||||
if(event.socket) {
|
||||
emacs_value socks = ezmq_obj_get_val(poller);
|
||||
while(!NILP(socks)) {
|
||||
emacs_value esock = CAR(socks);
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
if(sock->obj == event.socket) {
|
||||
trigger = esock;
|
||||
break;
|
||||
}
|
||||
socks = CDR(socks);
|
||||
}
|
||||
} else
|
||||
trigger = INT(event.fd);
|
||||
|
||||
if(EQ(trigger, Qnil)) {
|
||||
// This is mostly a sanity check.
|
||||
char *msg = "Socket not found in poller!";
|
||||
FUNCALL(INTERN("error"), 1, (emacs_value []){STRING(msg, strlen(msg))});
|
||||
}
|
||||
|
||||
return trigger;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_wait,
|
||||
"POLLER TIMEOUT",
|
||||
"Poll for an event with POLLER until TIMEOUT ms.\n"
|
||||
"If an event occures before TIMEOUT ms, return a cons\n"
|
||||
"cell (SOCK-OR-FD . EVENTS) where EVENTS is a list of events which\n"
|
||||
"occured before TIMEOUT. Otherwise return nil. If TIMEOUT is -1,\n"
|
||||
"wait forever until an event arrives.");
|
||||
emacs_value
|
||||
ezmq_poller_wait(emacs_value epoller, emacs_value etimeout)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
EZMQ_EXTRACT_INT(timeout, etimeout);
|
||||
|
||||
zmq_poller_event_t event;
|
||||
EZMQ_CHECK_ERROR(zmq_poller_wait(poller->obj, &event, timeout));
|
||||
emacs_value sevents = ezmq_split_poll_events(event.events);
|
||||
emacs_value trigger = ezmq_get_poll_trigger(poller, event);
|
||||
|
||||
return CONS(trigger, sevents);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_wait_all,
|
||||
"POLLER NEVENTS TIMEOUT",
|
||||
"Wait until TIMEOUT for NEVENTS on POLLER.\n"
|
||||
"If between 1 and NEVENTS events occured within TIMEOUT (measured\n"
|
||||
"in milliseconds) return a list of cons cells, each element having\n"
|
||||
"the form (SOCK-OR-FD . EVENTS). EVENTS is a list of events which\n"
|
||||
"occured on SOCK-OR-FD during the polling period. Note that the\n"
|
||||
"length of the returned list may be less than NEVENTS if less than\n"
|
||||
"NEVENTS events occurred within TIMEOUT. If TIMEOUT is -1, wait\n"
|
||||
"forever.");
|
||||
emacs_value
|
||||
ezmq_poller_wait_all(emacs_value epoller, emacs_value enevents, emacs_value etimeout)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(poller, EZMQ_POLLER, epoller);
|
||||
EZMQ_EXTRACT_INT(nevents, enevents);
|
||||
EZMQ_EXTRACT_INT(timeout, etimeout);
|
||||
|
||||
emacs_value retval = Qnil;
|
||||
zmq_poller_event_t revents[nevents];
|
||||
|
||||
int ntriggered = zmq_poller_wait_all(poller->obj, revents, nevents, timeout);
|
||||
EZMQ_CHECK_ERROR(ntriggered);
|
||||
|
||||
int i;
|
||||
for(i = 0; !NONLOCAL_EXIT() && i < ntriggered; i++) {
|
||||
zmq_poller_event_t event = revents[i];
|
||||
emacs_value sevents = ezmq_split_poll_events(event.events);
|
||||
emacs_value trigger = ezmq_get_poll_trigger(poller, event);
|
||||
retval = CONS(CONS(trigger, sevents), retval);
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
@@ -0,0 +1,15 @@
|
||||
#ifndef __POLL_H__
|
||||
#define __POLL_H__
|
||||
|
||||
#include "core.h"
|
||||
|
||||
EZMQ_FUN(ezmq_poll, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_new, void);
|
||||
EZMQ_FUN(ezmq_poller_add, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_modify, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_remove, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_wait, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_wait_all, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_destroy, emacs_value);
|
||||
|
||||
#endif /* __POLL_H__ */
|
||||
@@ -0,0 +1,468 @@
|
||||
#include "socket.h"
|
||||
#include <assert.h>
|
||||
|
||||
// TODO: Use the actual documentation of the ZMQ API for all functions.
|
||||
|
||||
EZMQ_DOC(ezmq_socket, "CONTEXT TYPE",
|
||||
"Return a new socket of TYPE in CONTEXT.");
|
||||
emacs_value
|
||||
ezmq_socket(emacs_value econtext, emacs_value etype)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(context, EZMQ_CONTEXT, econtext);
|
||||
EZMQ_EXTRACT_INT(type, etype);
|
||||
|
||||
void *sock = zmq_socket(context->obj, type);
|
||||
EZMQ_CHECK_NULL_ERROR(sock);
|
||||
ezmq_obj_t *obj = ezmq_new_obj(EZMQ_SOCKET, sock);
|
||||
// Ensure the context does not get garbage collected while the socket is in
|
||||
// use
|
||||
ezmq_obj_set_val(obj, econtext);
|
||||
ezmq_debug("ezmq_socket()\n");
|
||||
return ezmq_new_obj_ptr(obj);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_send,
|
||||
"SOCK MESSAGE &optional FLAGS",
|
||||
"Send a single message on SOCK.\n"
|
||||
"MESSAGE can either be a `zmq-message' or a string containing only\n"
|
||||
"unibyte characters. FLAGS is a bitmask of flag options. See the\n"
|
||||
"documentation of zmq_send in the C API for the values FLAGS can take.");
|
||||
emacs_value
|
||||
ezmq_send(emacs_value esock, emacs_value emsg, emacs_value eflags)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_OPTIONAL_INT(flags, eflags);
|
||||
|
||||
if(EQ(TYPE(emsg), Qstring)) {
|
||||
EZMQ_EXTRACT_STRING(msg, size, emsg);
|
||||
EZMQ_CHECK_ERROR(zmq_send(sock->obj, msg, size, flags));
|
||||
free(msg);
|
||||
} else {
|
||||
EZMQ_EXTRACT_OBJ(msg, EZMQ_MESSAGE, emsg);
|
||||
EZMQ_CHECK_ERROR(zmq_msg_send(msg->obj, sock->obj, flags));
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_recv,
|
||||
"SOCK &optional FLAGS NOCOPY",
|
||||
"Receive a message on SOCK.\n"
|
||||
"If NOCOPY is nil, return a copy of the message data received,\n"
|
||||
"otherwise when NOCOPY is non-nil, return the `zmq-message' object\n"
|
||||
"storing the message data. FLAGS is a bitmask of flag options. See\n"
|
||||
"the documentation of zmq_recv in the C API for the values FLAGS can take.");
|
||||
emacs_value
|
||||
ezmq_recv(emacs_value esock, emacs_value eflags, emacs_value enocopy)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_OPTIONAL_INT(flags, eflags);
|
||||
|
||||
zmq_msg_t *msg = ezmq_malloc(sizeof(*msg));
|
||||
EZMQ_CHECK_ERROR(zmq_msg_init(msg));
|
||||
EZMQ_CHECK_ERROR(zmq_msg_recv(msg, sock->obj, flags));
|
||||
|
||||
emacs_value retval = Qnil;
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
if(NILP(enocopy)) {
|
||||
// After examining emacs/src/alloc.c it looks like the null
|
||||
// termination of STRING, i.e. env->make_string, is already taken
|
||||
// care of when allocating in allocate_string_data so there is no
|
||||
// need to do a double copy just to insert a null terminator. It
|
||||
// looks like this has been the case since Emacs 25 when modules
|
||||
// were introduced.
|
||||
retval = STRING(zmq_msg_data(msg), zmq_msg_size(msg));
|
||||
zmq_msg_close(msg);
|
||||
free(msg);
|
||||
} else {
|
||||
retval = ezmq_new_obj_ptr(ezmq_new_obj(EZMQ_MESSAGE, msg));
|
||||
}
|
||||
} else {
|
||||
free(msg);
|
||||
}
|
||||
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
|
||||
EZMQ_DOC(ezmq_bind, "SOCK ENDPOINT", "Bind SOCK to ENDPOINT.");
|
||||
emacs_value
|
||||
ezmq_bind(emacs_value esock, emacs_value eendpoint)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(endpoint, elen, eendpoint);
|
||||
EZMQ_CHECK_ERROR(zmq_bind(sock->obj, endpoint));
|
||||
free(endpoint);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_connect, "SOCK ENDPOINT", "Connect SOCK to ENDPOINT.");
|
||||
emacs_value
|
||||
ezmq_connect(emacs_value esock, emacs_value eendpoint)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(endpoint, elen, eendpoint);
|
||||
EZMQ_CHECK_ERROR(zmq_connect(sock->obj, endpoint));
|
||||
free(endpoint);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_unbind, "SOCK ENDPOINT", "Unbind SOCK from ENDPOINT.");
|
||||
emacs_value
|
||||
ezmq_unbind(emacs_value esock, emacs_value eendpoint)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(endpoint, elen, eendpoint);
|
||||
EZMQ_CHECK_ERROR(zmq_unbind(sock->obj, endpoint));
|
||||
free(endpoint);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_disconnect, "SOCK ENDPOINT", "Disconnect SOCK from ENDPOINT.");
|
||||
emacs_value
|
||||
ezmq_disconnect(emacs_value esock, emacs_value eendpoint)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(endpoint, elen, eendpoint);
|
||||
EZMQ_CHECK_ERROR(zmq_disconnect(sock->obj, endpoint));
|
||||
free(endpoint);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_join, "SOCK GROUP", "On SOCK, join GROUP.");
|
||||
emacs_value
|
||||
ezmq_join(emacs_value esock, emacs_value egroup)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(group, elen, egroup);
|
||||
EZMQ_CHECK_ERROR(zmq_join(sock->obj, group));
|
||||
free(group);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_leave, "SOCK GROUP", "On SOCK, leave GROUP.");
|
||||
emacs_value
|
||||
ezmq_leave(emacs_value esock, emacs_value egroup)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(group, elen, egroup);
|
||||
EZMQ_CHECK_ERROR(zmq_leave(sock->obj, group));
|
||||
free(group);
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_close, "SOCK", "Close SOCK.");
|
||||
emacs_value
|
||||
ezmq_close(emacs_value esock)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_CHECK_ERROR(zmq_close(sock->obj));
|
||||
// From the zmq API a socket should only be closed once. This indicates to
|
||||
// the finalizer function that the socket has already been closed.
|
||||
if(!NONLOCAL_EXIT()) sock->obj = NULL;
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_proxy,
|
||||
"FRONTEND BACKEND &optional CAPTURE",
|
||||
"Start the builtin ZMQ proxy.\n"
|
||||
"Connect the FRONTEND socket to the BACKEND socket. Depending on\n"
|
||||
"the socket types, replies may flow in the opposite direction. The\n"
|
||||
"direction is conceptual only; the proxy is fully symmetric and there\n"
|
||||
"is no technical difference between frontend and backend.\n\n"
|
||||
"If the CAPTURE socket is non-nil, the proxy shall send all\n"
|
||||
"messages, received on both FRONTEND and BACKEND, to the CAPTURE\n"
|
||||
"socket. The CAPTURE socket should be a `zmq-PUB', `zmq-DEALER',\n"
|
||||
"`zmq-PUSH', or `zmq-PAIR' socket.");
|
||||
emacs_value
|
||||
ezmq_proxy(emacs_value efrontend, emacs_value ebackend, emacs_value ecapture)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(frontend, EZMQ_SOCKET, efrontend);
|
||||
EZMQ_EXTRACT_OBJ(backend, EZMQ_SOCKET, ebackend);
|
||||
EZMQ_EXTRACT_OPTIONAL_OBJ(capture, EZMQ_SOCKET, ecapture);
|
||||
EZMQ_CHECK_ERROR(zmq_proxy(frontend->obj,
|
||||
backend->obj,
|
||||
capture ? capture->obj : NULL));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_proxy_steerable,
|
||||
"FRONTEND BACKEND &optional CAPTURE CONTROL",
|
||||
"Start the builtin ZMQ proxy with control flow.\n"
|
||||
"Starts the builtin ZMQ proxy with additional control flow\n"
|
||||
"(see `zmq-proxy') provided by the CONTROL socket if it is non-nil.\n"
|
||||
"If PAUSE is received on this socket, the proxy suspends its\n"
|
||||
"activities. If RESUME is received, it goes on. If TERMINATE is\n"
|
||||
"received, it terminates smoothly. At start, the proxy runs\n"
|
||||
"normally as if `zmq-proxy' was used.");
|
||||
emacs_value
|
||||
ezmq_proxy_steerable(emacs_value efrontend, emacs_value ebackend, emacs_value ecapture, emacs_value econtrol)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(frontend, EZMQ_SOCKET, efrontend);
|
||||
EZMQ_EXTRACT_OBJ(backend, EZMQ_SOCKET, ebackend);
|
||||
EZMQ_EXTRACT_OPTIONAL_OBJ(capture, EZMQ_SOCKET, ecapture);
|
||||
EZMQ_EXTRACT_OPTIONAL_OBJ(control, EZMQ_SOCKET, econtrol);
|
||||
EZMQ_CHECK_ERROR(zmq_proxy_steerable(frontend->obj,
|
||||
backend->obj,
|
||||
capture ? capture->obj : NULL,
|
||||
control ? control->obj : NULL));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_socket_monitor,
|
||||
"SOCK ENDPOINT EVENTS",
|
||||
"The `zmq-socket-monitor' method lets an application thread track\n"
|
||||
"socket events (like connects) on a ZeroMQ SOCK. Each call to\n"
|
||||
"this method creates a `zmq-PAIR' socket and binds that to the\n"
|
||||
"specified inproc:// ENDPOINT. To collect the socket events, you\n"
|
||||
"must create your own `zmq-PAIR' socket, and connect that to the\n"
|
||||
"ENDPOINT.\n\n"
|
||||
"The EVENTS argument is a list of the socket events you wish to\n"
|
||||
"monitor, see the C API for the events. To monitor all events, use\n"
|
||||
"the event value `zmq-EVENT-ALL'. NOTE: as new events are added, the\n"
|
||||
"catch-all value will start returning them. An application that\n"
|
||||
"relies on a strict and fixed sequence of events must not use\n"
|
||||
"`zmq-EVENT-ALL' in order to guarantee compatibility with future\n"
|
||||
"versions.\n\n"
|
||||
"Each event is sent as two frames. The first frame contains an\n"
|
||||
"event number (16 bits), and an event value (32 bits) that\n"
|
||||
"provides additional data according to the event number. The\n"
|
||||
"second frame contains a string that specifies the affected TCP or\n"
|
||||
"IPC endpoint.");
|
||||
emacs_value
|
||||
ezmq_socket_monitor(emacs_value esock, emacs_value eendpoint, emacs_value eevents)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_STRING(endpoint, elen, eendpoint);
|
||||
intmax_t events = 0;
|
||||
emacs_value list = eevents;
|
||||
if(EQ(TYPE(list), Qcons)) {
|
||||
while(!NILP(list)) {
|
||||
// TODO: Verify event, raise an error if invalid
|
||||
EZMQ_EXTRACT_INT(event, CAR(list));
|
||||
events |= event;
|
||||
list = CDR(list);
|
||||
}
|
||||
} else
|
||||
ezmq_wrong_type_argument(list, 1, Qlist);
|
||||
|
||||
EZMQ_CHECK_ERROR(zmq_socket_monitor(sock, endpoint, events));
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_setsockopt, "SOCK OPTION VALUE", "Set SOCK OPTION to VALUE.");
|
||||
emacs_value
|
||||
ezmq_setsockopt(emacs_value esock, emacs_value eoption, emacs_value evalue)
|
||||
{
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_INT(option, eoption);
|
||||
|
||||
switch(option) {
|
||||
// INT
|
||||
case ZMQ_BACKLOG: case ZMQ_RATE: case ZMQ_RECOVERY_IVL: case ZMQ_SNDHWM:
|
||||
case ZMQ_SNDBUF: case ZMQ_SNDTIMEO: case ZMQ_RCVHWM: case ZMQ_RCVBUF:
|
||||
case ZMQ_RCVTIMEO: case ZMQ_LINGER: case ZMQ_RECONNECT_IVL:
|
||||
case ZMQ_RECONNECT_IVL_MAX: case ZMQ_MULTICAST_HOPS:
|
||||
case ZMQ_MULTICAST_MAXTPDU: case ZMQ_CONNECT_TIMEOUT:
|
||||
case ZMQ_HANDSHAKE_IVL: case ZMQ_HEARTBEAT_IVL:
|
||||
case ZMQ_HEARTBEAT_TIMEOUT: case ZMQ_HEARTBEAT_TTL:
|
||||
case ZMQ_USE_FD: case ZMQ_TCP_KEEPALIVE:
|
||||
case ZMQ_TCP_KEEPALIVE_CNT: case ZMQ_TCP_KEEPALIVE_IDLE:
|
||||
case ZMQ_TCP_KEEPALIVE_INTVL: case ZMQ_TCP_MAXRT: case ZMQ_TOS:
|
||||
case ZMQ_VMCI_CONNECT_TIMEOUT: {
|
||||
EZMQ_EXTRACT_INT(value, evalue);
|
||||
zmq_setsockopt(sock->obj, option, &value, sizeof(int));
|
||||
break;
|
||||
}
|
||||
// UINT64
|
||||
// TODO: Figure out the best way to handle U?INT64 since Emacs integers
|
||||
// are all signed and only 30 bits wide. This won't
|
||||
// be the case with bignum support in future Emacsen.
|
||||
case ZMQ_AFFINITY: case ZMQ_VMCI_BUFFER_SIZE:
|
||||
case ZMQ_VMCI_BUFFER_MAX_SIZE: case ZMQ_VMCI_BUFFER_MIN_SIZE:
|
||||
// INT64
|
||||
case ZMQ_MAXMSGSIZE: {
|
||||
EZMQ_EXTRACT_INT(_value, evalue);
|
||||
int64_t value = (int64_t)_value;
|
||||
zmq_setsockopt(sock->obj, option, &value, sizeof(int64_t));
|
||||
break;
|
||||
}
|
||||
// INT with BOOL values
|
||||
case ZMQ_CONFLATE: case ZMQ_CURVE_SERVER: case ZMQ_GSSAPI_PLAINTEXT:
|
||||
case ZMQ_GSSAPI_SERVER: case ZMQ_IMMEDIATE: case ZMQ_INVERT_MATCHING:
|
||||
case ZMQ_IPV6: case ZMQ_PLAIN_SERVER: case ZMQ_PROBE_ROUTER:
|
||||
case ZMQ_REQ_CORRELATE: case ZMQ_REQ_RELAXED: case ZMQ_ROUTER_HANDOVER:
|
||||
case ZMQ_ROUTER_MANDATORY: case ZMQ_ROUTER_RAW: case ZMQ_STREAM_NOTIFY:
|
||||
case ZMQ_XPUB_VERBOSE: case ZMQ_XPUB_VERBOSER: case ZMQ_XPUB_MANUAL:
|
||||
case ZMQ_XPUB_NODROP: {
|
||||
int value = !NILP(evalue);
|
||||
zmq_setsockopt(sock->obj, option, &value, sizeof(int));
|
||||
break;
|
||||
}
|
||||
// STRING
|
||||
case ZMQ_GSSAPI_PRINCIPAL: case ZMQ_GSSAPI_SERVICE_PRINCIPAL:
|
||||
case ZMQ_PLAIN_PASSWORD: case ZMQ_PLAIN_USERNAME:
|
||||
case ZMQ_SOCKS_PROXY: case ZMQ_ZAP_DOMAIN: {
|
||||
EZMQ_EXTRACT_STRING(str, len, evalue);
|
||||
// From http://api.zeromq.org/master:zmq-setsockopt
|
||||
//
|
||||
// For options taking a value of type "character string", the provided
|
||||
// byte data should either contain no zero bytes, or end in a single
|
||||
// zero byte
|
||||
int i;
|
||||
for(i = 0; i < len; i++)
|
||||
if(!str[i]) break;
|
||||
if(i != len) {
|
||||
char const *msg = "Value cannot contain NUL characters";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
} else
|
||||
zmq_setsockopt(sock->obj, option, str, len);
|
||||
free(str);
|
||||
break;
|
||||
}
|
||||
// BINARY
|
||||
case ZMQ_CONNECT_ROUTING_ID:
|
||||
case ZMQ_ROUTING_ID: case ZMQ_SUBSCRIBE: case ZMQ_UNSUBSCRIBE:
|
||||
case ZMQ_XPUB_WELCOME_MSG: {
|
||||
EZMQ_EXTRACT_STRING(bin, size, evalue);
|
||||
zmq_setsockopt(sock->obj, option, bin, size);
|
||||
free(bin);
|
||||
break;
|
||||
}
|
||||
// CURVE
|
||||
case ZMQ_CURVE_PUBLICKEY: case ZMQ_CURVE_SECRETKEY:
|
||||
case ZMQ_CURVE_SERVERKEY: {
|
||||
EZMQ_EXTRACT_STRING(str, len, evalue);
|
||||
// len includes the terminating NULL
|
||||
// binary representation is 32 bytes
|
||||
// string representation is 40 bytes
|
||||
if(len == 32 || len == 40) {
|
||||
if(len == 40) len += 1;
|
||||
zmq_setsockopt(sock->obj, option, str, len);
|
||||
} else {
|
||||
const char *msg = "CURVE key not of valid length.";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
free(str);
|
||||
break;
|
||||
}
|
||||
default: {
|
||||
const char *msg = "Socket option not handled yet.";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
break;
|
||||
}
|
||||
return Qnil;
|
||||
}
|
||||
|
||||
// This assertion is required since Emacs does not support 64 bit wide
|
||||
// integers, but this will change with bignum support.
|
||||
void
|
||||
ezmq_assert_eint(uint64_t val)
|
||||
{
|
||||
assert((int64_t)val >= INTMAX_MIN && val <= INTMAX_MAX);
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_getsockopt, "SOCK OPTION", "Get SOCK OPTION.");
|
||||
emacs_value
|
||||
ezmq_getsockopt(emacs_value esock, emacs_value eoption)
|
||||
{
|
||||
char buf[256];
|
||||
size_t size;
|
||||
EZMQ_EXTRACT_OBJ(sock, EZMQ_SOCKET, esock);
|
||||
EZMQ_EXTRACT_INT(option, eoption);
|
||||
|
||||
switch(option) {
|
||||
// INT
|
||||
case ZMQ_MECHANISM: case ZMQ_BACKLOG: case ZMQ_RATE: case ZMQ_RECOVERY_IVL:
|
||||
case ZMQ_SNDHWM: case ZMQ_SNDBUF: case ZMQ_SNDTIMEO: case ZMQ_RCVHWM:
|
||||
case ZMQ_RCVBUF: case ZMQ_RCVTIMEO: case ZMQ_LINGER: case ZMQ_RECONNECT_IVL:
|
||||
case ZMQ_RECONNECT_IVL_MAX: case ZMQ_MULTICAST_HOPS:
|
||||
case ZMQ_MULTICAST_MAXTPDU: case ZMQ_CONNECT_TIMEOUT:
|
||||
case ZMQ_HANDSHAKE_IVL: case ZMQ_HEARTBEAT_IVL:
|
||||
case ZMQ_HEARTBEAT_TIMEOUT: case ZMQ_HEARTBEAT_TTL: case ZMQ_USE_FD:
|
||||
case ZMQ_EVENTS: case ZMQ_TCP_KEEPALIVE: case ZMQ_TCP_KEEPALIVE_CNT:
|
||||
case ZMQ_TCP_KEEPALIVE_IDLE: case ZMQ_TCP_KEEPALIVE_INTVL:
|
||||
case ZMQ_TCP_MAXRT: case ZMQ_TOS: case ZMQ_VMCI_CONNECT_TIMEOUT: {
|
||||
int val;
|
||||
size = sizeof(int);
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
memcpy(&val, buf, size);
|
||||
return INT(val);
|
||||
}
|
||||
break;
|
||||
}
|
||||
// UINT64
|
||||
case ZMQ_AFFINITY: case ZMQ_VMCI_BUFFER_SIZE:
|
||||
case ZMQ_VMCI_BUFFER_MAX_SIZE: case ZMQ_VMCI_BUFFER_MIN_SIZE:
|
||||
// INT64
|
||||
case ZMQ_MAXMSGSIZE: {
|
||||
uint64_t val;
|
||||
size = sizeof(uint64_t);
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
memcpy(&val, buf, size);
|
||||
ezmq_assert_eint(val);
|
||||
return INT((intmax_t)val);
|
||||
}
|
||||
break;
|
||||
}
|
||||
// INT with BOOL valus
|
||||
case ZMQ_IMMEDIATE: case ZMQ_INVERT_MATCHING: case ZMQ_CONFLATE:
|
||||
case ZMQ_IPV6: case ZMQ_PLAIN_SERVER: case ZMQ_GSSAPI_PLAINTEXT:
|
||||
case ZMQ_GSSAPI_SERVER: case ZMQ_RCVMORE: {
|
||||
int val;
|
||||
size = sizeof(int);
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
memcpy(&val, buf, size);
|
||||
return val ? Qt : Qnil;
|
||||
}
|
||||
break;
|
||||
}
|
||||
// BOOL
|
||||
case ZMQ_THREAD_SAFE: {
|
||||
bool val;
|
||||
size = sizeof(bool);
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
memcpy(&val, buf, size);
|
||||
return val ? Qt : Qnil;
|
||||
}
|
||||
break;
|
||||
}
|
||||
// STRING
|
||||
case ZMQ_GSSAPI_PRINCIPAL: case ZMQ_GSSAPI_SERVICE_PRINCIPAL:
|
||||
case ZMQ_LAST_ENDPOINT: case ZMQ_PLAIN_PASSWORD: case ZMQ_PLAIN_USERNAME:
|
||||
case ZMQ_SOCKS_PROXY: case ZMQ_ZAP_DOMAIN:
|
||||
size = 256;
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT())
|
||||
return STRING(buf, size - 1);
|
||||
break;
|
||||
// BINARY
|
||||
case ZMQ_ROUTING_ID:
|
||||
size = 256;
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
buf[size] = 0;
|
||||
return STRING(buf, size);
|
||||
}
|
||||
break;
|
||||
// CURVE
|
||||
// NOTE: These always returns the string representation
|
||||
case ZMQ_CURVE_PUBLICKEY: case ZMQ_CURVE_SECRETKEY: case ZMQ_CURVE_SERVERKEY:
|
||||
size = 41;
|
||||
EZMQ_CHECK_ERROR(zmq_getsockopt(sock->obj, option, buf, &size));
|
||||
if(!NONLOCAL_EXIT())
|
||||
return STRING(buf, size - 1);
|
||||
break;
|
||||
default: {
|
||||
const char *msg = "Socket option not handled yet.";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
break;
|
||||
}
|
||||
return NULL;
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
|
||||
#ifndef __SOCKET_H__
|
||||
#define __SOCKET_H__
|
||||
|
||||
#include "core.h"
|
||||
|
||||
EZMQ_FUN(ezmq_socket, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_send, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_recv, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_bind, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_connect, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_join, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_unbind, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_disconnect, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_leave, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_close, emacs_value);
|
||||
EZMQ_FUN(ezmq_proxy, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_proxy_steerable, emacs_value, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_socket_monitor, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_setsockopt, emacs_value, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_getsockopt, emacs_value, emacs_value);
|
||||
|
||||
#endif /* __SOCKET_H__ */
|
||||
@@ -0,0 +1,178 @@
|
||||
#include "util.h"
|
||||
|
||||
EZMQ_DOC(ezmq_has, "CAPABILITY", "Return non-nil if ZMQ has CAPABILITY.");
|
||||
emacs_value ezmq_has(emacs_value ecapability)
|
||||
{
|
||||
EZMQ_EXTRACT_STRING(capability, clen, ecapability);
|
||||
emacs_value retval = zmq_has(capability) ? Qt : Qnil;
|
||||
free(capability);
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_version, "", "Return the currently installed version of ZMQ.");
|
||||
emacs_value ezmq_version()
|
||||
{
|
||||
int major, minor, patch;
|
||||
char buf[16];
|
||||
zmq_version(&major, &minor, &patch);
|
||||
sprintf(buf, "%d.%d.%d", major, minor, patch);
|
||||
return STRING(buf, strlen(buf));
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_z85_decode, "KEY", "Decode a z85 encoded KEY.");
|
||||
emacs_value ezmq_z85_decode(emacs_value ekey)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
|
||||
EZMQ_EXTRACT_STRING(key, klen, ekey);
|
||||
|
||||
if(klen % 5 == 0) {
|
||||
ptrdiff_t dlen = (ptrdiff_t)(0.8*klen);
|
||||
char *decoded = ezmq_malloc(dlen + 1);
|
||||
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
decoded[dlen] = 0;
|
||||
if(zmq_z85_decode((uint8_t *)decoded, key))
|
||||
retval = STRING(decoded, dlen);
|
||||
}
|
||||
|
||||
free(decoded);
|
||||
} else {
|
||||
char *msg = "Length not a multiple of 5";
|
||||
ezmq_signal(Qargs_out_of_range, 2, INT(klen), STRING(msg, strlen(msg)));
|
||||
}
|
||||
|
||||
free(key);
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_z85_encode, "DATA", "Encode DATA using the z85 encoding.");
|
||||
emacs_value
|
||||
ezmq_z85_encode(emacs_value econtent)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
|
||||
EZMQ_EXTRACT_STRING(content, clen, econtent);
|
||||
|
||||
if(clen % 4 == 0) {
|
||||
ptrdiff_t elen = (ptrdiff_t)(1.25*(float)clen);
|
||||
char *encoded = ezmq_malloc(elen + 1);
|
||||
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
if(zmq_z85_encode(encoded, (uint8_t *)content, clen))
|
||||
retval = STRING(encoded, elen);
|
||||
}
|
||||
|
||||
free(encoded);
|
||||
} else {
|
||||
const char *msg = "Length not a multiple of 4";
|
||||
ezmq_signal(Qargs_out_of_range, 2, INT(clen), STRING(msg, strlen(msg)));
|
||||
}
|
||||
|
||||
free(content);
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_curve_keypair, "", "Return a (PUBLIC-KEY . SECRET-KEY) pair.");
|
||||
emacs_value
|
||||
ezmq_curve_keypair(void)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
|
||||
if(zmq_has("curve")) {
|
||||
char *public = ezmq_malloc(41);
|
||||
char *private = ezmq_malloc(41);
|
||||
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
EZMQ_CHECK_ERROR(zmq_curve_keypair(public, private));
|
||||
if(!NONLOCAL_EXIT())
|
||||
retval = CONS(STRING(public, 40), STRING(private, 40));
|
||||
}
|
||||
|
||||
free(public);
|
||||
free(private);
|
||||
} else {
|
||||
const char *msg = "ZMQ not built with CURVE security";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_curve_public, "SECRET-KEY", "Return the corresponding public key of SECRET-KEY.");
|
||||
emacs_value
|
||||
ezmq_curve_public(emacs_value eprivate)
|
||||
{
|
||||
emacs_value retval = Qnil;
|
||||
|
||||
if(zmq_has("curve")) {
|
||||
EZMQ_EXTRACT_STRING(private, plen, eprivate);
|
||||
char *public = ezmq_malloc(41);
|
||||
|
||||
if(!NONLOCAL_EXIT()) {
|
||||
EZMQ_CHECK_ERROR(zmq_curve_public(public, private));
|
||||
if(!NONLOCAL_EXIT())
|
||||
retval = STRING(public, 40);
|
||||
}
|
||||
|
||||
free(public);
|
||||
free(private);
|
||||
} else {
|
||||
const char *msg = "ZMQ not built with CURVE security";
|
||||
ezmq_signal(Qzmq_error, 1, STRING(msg, strlen(msg)));
|
||||
}
|
||||
|
||||
return retval;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_equal, "O1 O2", "Same as `equal' but properly handles ZMQ objects.");
|
||||
emacs_value
|
||||
ezmq_equal(emacs_value ea, emacs_value eb)
|
||||
{
|
||||
if(!EQUAL(ea, eb)) {
|
||||
ezmq_obj_t *a = USER_PTR(ea);
|
||||
ezmq_obj_t *b = USER_PTR(eb);
|
||||
|
||||
if(!NONLOCAL_EXIT() &&
|
||||
// If both objects are user-ptrs, ensure the objects indeed point to
|
||||
// ZMQ objects
|
||||
USER_FINALIZER(ea) == &ezmq_obj_finalizer &&
|
||||
USER_FINALIZER(eb) == &ezmq_obj_finalizer &&
|
||||
a == b) {
|
||||
return Qt;
|
||||
} else {
|
||||
CLEAR_NONLOCAL_EXIT();
|
||||
return Qnil;
|
||||
}
|
||||
} else
|
||||
return Qt;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_message_p, "OBJ", "Is OBJ a `zmq-message'?");
|
||||
emacs_value
|
||||
ezmq_message_p(emacs_value obj)
|
||||
{
|
||||
return ezmq_obj_of_type(obj, EZMQ_MESSAGE) ? Qt : Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_socket_p, "OBJ", "Is OBJ a `zmq-socket'?");
|
||||
emacs_value
|
||||
ezmq_socket_p(emacs_value obj)
|
||||
{
|
||||
return ezmq_obj_of_type(obj, EZMQ_SOCKET) ? Qt : Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_context_p, "OBJ", "Is OBJ a `zmq-context'?");
|
||||
emacs_value
|
||||
ezmq_context_p(emacs_value obj)
|
||||
{
|
||||
return ezmq_obj_of_type(obj, EZMQ_CONTEXT) ? Qt : Qnil;
|
||||
}
|
||||
|
||||
EZMQ_DOC(ezmq_poller_p, "OBJ", "Is OBJ a `zmq-poller'?");
|
||||
emacs_value
|
||||
ezmq_poller_p(emacs_value obj)
|
||||
{
|
||||
return ezmq_obj_of_type(obj, EZMQ_POLLER) ? Qt : Qnil;
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
#ifndef __UTIL_H__
|
||||
#define __UTIL_H__
|
||||
|
||||
#include "core.h"
|
||||
|
||||
EZMQ_FUN(ezmq_has, emacs_value);
|
||||
EZMQ_FUN(ezmq_version, void);
|
||||
EZMQ_FUN(ezmq_z85_decode, emacs_value);
|
||||
EZMQ_FUN(ezmq_z85_encode, emacs_value);
|
||||
EZMQ_FUN(ezmq_curve_keypair, void);
|
||||
EZMQ_FUN(ezmq_curve_public, emacs_value);
|
||||
EZMQ_FUN(ezmq_equal, emacs_value, emacs_value);
|
||||
EZMQ_FUN(ezmq_message_p, emacs_value);
|
||||
EZMQ_FUN(ezmq_socket_p, emacs_value);
|
||||
EZMQ_FUN(ezmq_context_p, emacs_value);
|
||||
EZMQ_FUN(ezmq_poller_p, emacs_value);
|
||||
|
||||
#endif /* __UTIL_H__ */
|
||||
Reference in New Issue
Block a user