403Webshell
Server IP : 217.160.0.212  /  Your IP : 216.73.217.5
Web Server : Apache
System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64
User : sws1073854427 ( 1073854427)
PHP Version : 8.4.23
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : OFF  |  Pkexec : OFF
Directory :  /usr/share/emacs/28.2/lisp/cedet/ede/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/emacs/28.2/lisp/cedet/ede/proj-comp.elc
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\210\303\304\305\306!\"\210\303\307\310\306!\"\210\303\311\307\"\210\312\311\313\314#\210\315\306\316\307#\317\306\320\321\322$\210\323\324\325\326\325\327%\210\323\330\325\331\325\332%\207" [require ede ede/autoconf-edit defalias ede-compilation-program-p eieio-make-class-predicate ede-compilation-program ede-compilation-program--eieio-childp eieio-make-child-predicate ede-compilation-program-child-p make-obsolete "use (cl-typep ... \\='ede-compilation-program) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (eieio-instance-inheritor) ((name :initarg :name :type string :custom string :documentation "Name of this type of compiler.") (variables :initarg :variables :type list :custom (repeat (cons (string :tag "Variable") (string :tag "Value"))) :documentation "Variables needed in the Makefile for this compiler.\nAn assoc list where each element is (VARNAME . VALUE) where VARNAME\nis a string, and VALUE is either a string, or a list of strings.\nFor example, GCC would define CC=gcc, and emacs would define EMACS=emacs.") (sourcetype :initarg :sourcetype :type list :documentation "A list of `ede-sourcecode' objects this class will handle.\nThis is used to match target objects with the compilers and linkers\nthey can use, and which files this object is interested in." :accessor ede-object-sourcecode) (rules :initarg :rules :initform nil :type list :custom (repeat (object :objecttype ede-makefile-rule)) :documentation "Auxiliary rules needed for this compiler to run.\nFor example, yacc/lex files need additional chain rules, or inferences.") (commands :initarg :commands :type list :custom (repeat string) :documentation "The commands used to execute this compiler.\nThe object which uses this compiler will place these commands after\nits rule definition.") (autoconf :initarg :autoconf :initform nil :type list :custom (repeat string) :documentation "Autoconf function to call if this type of compiler is used.\nWhen a project is in Automake mode, this defines the autoconf function to\ncall to initialize automake to use this compiler.\nFor example, there may be multiple C compilers, but they all probably\nuse the same autoconf form.") (objectextention :initarg :objectextention :type string :documentation "A string which is the extension used for object files.\nFor example, C code uses .o on Unix, and Emacs Lisp uses .elc.")) (:documentation "A program used to compile or link a program via a Makefile.\nContains everything needed to output code into a Makefile, or autoconf\nfile.") cl-generic-define-method ede-object-sourcecode nil ((this ede-compilation-program)) #[257 "\300\301\"\205\302\301\"\207" [slot-boundp sourcetype eieio-oref] 4 "Retrieve the slot `sourcetype' from an object of class\n`ede-compilation-program'.\n\n(fn THIS)"] \(setf\ ede-object-sourcecode\) (value (this ede-compilation-program)) #[514 "\300\301#\207" [eieio-oset sourcetype] 6 "\n\n(fn VALUE THIS)"]] 7)
#@80 Create a new object of class type `ede-compilation-program'.

(fn &rest SLOTS)
(defalias 'ede-compilation-program #[128 "\300\301\302#\207" [apply make-instance ede-compilation-program] 5 (#$ . 3072)])
(byte-code "\300\301\302\303#\300\207" [function-put ede-compilation-program compiler-macro ede-compilation-program--anon-cmacro] 4)
#@26 

(fn WHOLE &rest SLOTS)
(defalias 'ede-compilation-program--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 3414)])
(byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias ede-compiler-p eieio-make-class-predicate ede-compiler ede-compiler--eieio-childp eieio-make-child-predicate ede-compiler-child-p make-obsolete "use (cl-typep ... \\='ede-compiler) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (ede-compilation-program) ((makedepends :initarg :makedepends :initform nil :type boolean :documentation "Non-nil if this compiler can make dependencies.") (uselinker :initarg :uselinker :initform nil :type boolean :documentation "Non-nil if this compiler creates code that can be linked.\nThis requires that the containing target also define a list of available\nlinkers that can be used.")) (:documentation "Definition for a compiler.\nDifferent types of objects will provide different compilers for\ndifferent situations.")] 6)
#@69 Create a new object of class type `ede-compiler'.

(fn &rest SLOTS)
(defalias 'ede-compiler #[128 "\300\301\302#\207" [apply make-instance ede-compiler] 5 (#$ . 4598)])
(byte-code "\300\301\302\303#\300\207" [function-put ede-compiler compiler-macro ede-compiler--anon-cmacro] 4)
#@26 

(fn WHOLE &rest SLOTS)
(defalias 'ede-compiler--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 4885)])
(byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias ede-linker-p eieio-make-class-predicate ede-linker ede-linker--eieio-childp eieio-make-child-predicate ede-linker-child-p make-obsolete "use (cl-typep ... \\='ede-linker) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (ede-compilation-program) nil (:documentation "Contains information needed to link many generated object files together.")] 6)
#@67 Create a new object of class type `ede-linker'.

(fn &rest SLOTS)
(defalias 'ede-linker #[128 "\300\301\302#\207" [apply make-instance ede-linker] 5 (#$ . 5644)])
(byte-code "\300\301\302\303#\300\207" [function-put ede-linker compiler-macro ede-linker--anon-cmacro] 4)
#@26 

(fn WHOLE &rest SLOTS)
(defalias 'ede-linker--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 5921)])
(byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias ede-makefile-rule-p eieio-make-class-predicate ede-makefile-rule ede-makefile-rule--eieio-childp eieio-make-child-predicate ede-makefile-rule-child-p make-obsolete "use (cl-typep ... \\='ede-makefile-rule) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal nil ((target :initarg :target :initform #1="" :type string :custom string :documentation "The target pattern.\nA pattern of \"%.o\" is used for inference rules, and would match object files.\nA target of \"foo.o\" explicitly matches the file foo.o.") (dependencies :initarg :dependencies :initform #1# :type string :custom string :documentation "Dependencies on this target.\nA pattern of \"%.o\" would match a file of the same prefix as the target\nif that target is also an inference rule pattern.\nA dependency of \"foo.c\" explicitly lists foo.c as a dependency.\nA variable such as $(name_SOURCES) will list all the source files\nbelonging to the target name.") (rules :initarg :rules :initform nil :type list :custom (repeat string) :documentation "Scripts to execute.\nThese scripts will be executed in sh (Unless the SHELL variable is overridden).\nDo not prefix with TAB.\nEach individual element of this list can be either a string, or\na lambda function.  (The custom element does not yet express that.") (phony :initarg :phony :initform nil :type boolean :custom boolean :documentation "Is this a phony rule?\nAdds this rule to a .PHONY list.")) (:documentation "A single rule for building some target.")] 6)
#@74 Create a new object of class type `ede-makefile-rule'.

(fn &rest SLOTS)
(defalias 'ede-makefile-rule #[128 "\300\301\302#\207" [apply make-instance ede-makefile-rule] 5 (#$ . 7807)])
(byte-code "\300\301\302\303#\300\207" [function-put ede-makefile-rule compiler-macro ede-makefile-rule--anon-cmacro] 4)
#@26 

(fn WHOLE &rest SLOTS)
(defalias 'ede-makefile-rule--anon-cmacro #[385 "\211@;\204\207\300\301\302@@#@\303@DABB\"\207" [macroexp-warn-and-return format "Obsolete name arg %S to constructor %S" identity] 7 (#$ . 8119)])
#@39 The master list of all EDE compilers.
(defvar ede-compiler-list nil (#$ . 8354))
#@39 The master list of all EDE compilers.
(defvar ede-linker-list nil (#$ . 8441))
#@170 List of EDE compilers that have already inserted parts of themselves.
This is used when creating a Makefile to prevent duplicate variables and
rules from being created.
(defvar ede-current-build-list nil (#$ . 8527))
(byte-code "\300\301\302\303\304\305%\210\300\301\306\307\304\310%\207" [cl-generic-define-method initialize-instance (:after) ((this ede-compiler) &rest _fields) nil #[385 "\235\203\207B\211\207" [ede-compiler-list] 4 "Make sure that all ede compiler objects are cached in\n`ede-compiler-list'.\n\n(fn THIS &rest FIELDS)"] (:after) ((this ede-linker) &rest _fields) #[385 "\235\203\207B\211\207" [ede-linker-list] 4 "Make sure that all ede compiler objects are cached in\n`ede-linker-list'.\n\n(fn THIS &rest FIELDS)"]] 6)
#@157 Execute BODY, making sure that `ede-current-build-list' is maintained.
This will prevent rules from creating duplicate variables or rules.

(fn &rest BODY)
(defalias 'ede-compiler-begin-unique '(macro . #[128 "\300\301BB\207" [let ((ede-current-build-list nil))] 4 (#$ . 9291)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put ede-compiler-begin-unique lisp-indent-function 0 put edebug-form-spec t] 5)
#@87 Using OBJECT, execute BODY only once per Makefile generation.

(fn OBJECT &rest BODY)
(defalias 'ede-compiler-only-once '(macro . #[385 "\300\301\302\303BBD\304\305\306EBBE\207" [if not member (ede-current-build-list) progn add-to-list 'ede-current-build-list] 8 (#$ . 9720)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put ede-compiler-only-once lisp-indent-function 1 put edebug-form-spec t] 5)
#@157 Execute BODY, making sure that `ede-current-build-list' is maintained.
This will prevent rules from creating duplicate variables or rules.

(fn &rest BODY)
(defalias 'ede-linker-begin-unique '(macro . #[128 "\300\301BB\207" [let ((ede-current-build-list nil))] 4 (#$ . 10148)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put ede-linker-begin-unique lisp-indent-function 0 put edebug-form-spec t] 5)
#@87 Using OBJECT, execute BODY only once per Makefile generation.

(fn OBJECT &rest BODY)
(defalias 'ede-linker-only-once '(macro . #[385 "\300\301\302\303BBD\304\305\306EBBE\207" [if not member (ede-current-build-list) progn add-to-list 'ede-current-build-list] 8 (#$ . 10574)]))
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put ede-linker-only-once lisp-indent-function 1 put edebug-form-spec t] 5)
#@100 Return a compiler from the list COMPILERS that will compile SOURCETYPE.

(fn COMPILERS SOURCETYPE)
(defalias 'ede-proj-find-compiler #[514 "\203\211\300@\301\"\235\204A\262\202\242\207" [eieio-oref sourcetype] 6 (#$ . 10999)])
#@94 Return a compiler from the list LINKERS to be used with SOURCETYPE.

(fn LINKERS SOURCETYPE)
(defalias 'ede-proj-find-linker #[514 "\203\300@\301\"\203\211\302@\301\"\235\204A\262\202\242\207" [slot-boundp sourcetype eieio-oref] 6 (#$ . 11243)])
(byte-code "\300\301\302\303\302\304%\210\300\305\302\306\302\307%\207" [cl-generic-define-method ede-proj-tweak-autoconf nil ((this ede-compilation-program)) #[257 "\300\301\302\303\"\"\207" [mapcar #[257 "\211;\203	\300!\207\211:\203\300@A\"\207\301\302!\207" [autoconf-insert-new-macro error "Autoconf directives must be a string, or cons cell"] 4 "\n\n(fn OBJ)"] eieio-oref autoconf] 6 "Tweak the configure file (current buffer) to accommodate THIS.\n\n(fn THIS)"] ede-proj-flush-autoconf ((_this ede-compilation-program)) #[257 "\300\207" [nil] 2 "Flush the configure file (current buffer) to accommodate THIS.\n\n(fn THIS)"]] 6)
#@141 Add VARNAME into the current Makefile if it doesn't exist.
Execute BODY in a location where a value can be placed.

(fn VARNAME &rest BODY)
(defalias 'proj-comp-insert-variable-once '(macro . #[385 "\300\301DC\302\303\304\305\306\"BBBE\207" [let v unless (re-search-backward (concat "^" v "\\s-*=") nil t) (insert v "=") append ((insert "\n") (goto-char (point-max)))] 10 (#$ . 12152)]))
(byte-code "\300\301\302\303#\304\301\305\306#\210\307\310\311\312\311\313%\210\307\314\311\315\311\316%\210\307\317\311\320\311\321%\210\307\322\311\323\311\324%\210\307\325\311\326\311\327%\210\307\325\311\330\311\331%\210\307\332\311\333\311\334%\210\335\336!\207" [function-put proj-comp-insert-variable-once lisp-indent-function 1 put edebug-form-spec (sexp body) cl-generic-define-method ede-proj-makefile-insert-variables nil ((this ede-compilation-program)) #[257 "\300\301\"\205\302\303\304\301\"\"\207" [eieio-instance-inheritor-slot-boundp variables mapcar #[257 "\211@\300\301\302Q\303\304#?\205,\211\305\261\210A\211<\203#\306\307\"\266\202'\211c\266\310c\210db\207" [re-search-backward "^" "\\s-*=" nil t "=" mapc #[257 "\300\261\207" [" "] 3 "\n\n(fn C)"] "\n"] 6 "\n\n(fn VAR)"] slot-value] 6 "Insert variables needed by the compiler THIS.\n\n(fn THIS)"] ede-compiler-intermediate-objects-p ((this ede-compiler)) #[257 "\300\301\"\207" [eieio-oref uselinker] 4 "Return non-nil if THIS has intermediate object files.\nIf this compiler creates code that can be linked together,\nthen the object files created by the compiler are considered intermediate.\n\n(fn THIS)"] ede-compiler-intermediate-object-variable ((_this ede-compiler) targetname) #[514 "\211\300P\207" ["_OBJ"] 4 "Return a string based on THIS representing a make object variable.\nTARGETNAME is the name of the target that these objects belong to.\n\n(fn THIS TARGETNAME)"] ede-proj-makefile-insert-object-variables ((this ede-compiler) targetname sourcefiles) #[771 "\300!\205 \301\"\302\261\210\303\304\"\305\306\307#\"\210\310c\262\207" [ede-compiler-intermediate-objects-p ede-compiler-intermediate-object-variable "=" eieio-oref sourcetype mapc make-closure #[257 "\301\211\203\302@J\"\204\211A\262\202\211\205#\303\304!\305\300\306\"\261\207" [V0 V1 ede-want-file-source-p " " file-name-sans-extension eieio-oref objectextention] 7 "\n\n(fn S)"] "\n"] 9 "Insert an OBJ variable to specify object code to be generated for THIS.\nThe name of the target is TARGETNAME as a string.  SOURCEFILES is the list of\nfiles to be objectified.\nNot all compilers do this.\n\n(fn THIS TARGETNAME SOURCEFILES)"] ede-proj-makefile-insert-rules ((this ede-compilation-program)) #[257 "\211\235?\205\211\235\204\211B\301\302\303\304\"\"\207" [ede-current-build-list mapc ede-proj-makefile-insert-rules eieio-oref rules] 6 "Insert rules needed for THIS compiler object.\n\n(fn THIS)"] ((this ede-makefile-rule)) #[257 "\300\301\"\203\302\300\303\"\304\261\210\300\303\"\305\300\306\"\307\310\311\300\312\"\307#\313\261\207" [eieio-oref phony ".PHONY: " target "\n" ": " dependencies "\n	" mapconcat #[257 "\207" [] 2 "\n\n(fn C)"] rules "\n\n"] 10 "Insert rules needed for THIS rule object.\n\n(fn THIS)"] ede-proj-makefile-insert-commands ((this ede-compilation-program)) #[257 "\300\301\"\205\302\303\304\301\"\"\210\305c\207" [slot-boundp commands mapc #[257 "n\203\300\202	\301;\203\202'<\203#@\302=\203# \202'\303\304\"\305\261\207" ["	" " " lambda format "%S" "\n"] 5 "\n\n(fn OBJ)"] slot-value "\n"] 6 "Insert the commands needed to use compiler THIS.\nThe object creating makefile rules must call this method for the\ncompiler it decides to use after inserting in the rule.\n\n(fn THIS)"] provide ede/proj-comp] 7)

Youez - 2016 - github.com/yon3zu
LinuXploit