[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

exporting from a patch file



    I'm trying to figure out a foolproof incantation within a Genera patch file to do the
    following: 
      1. Define a new function F in package A.
      2. Export symbol F from package A.
      3. Change an existing function in package B to reference function F as an external
	 symbol in package A ... that is, A:F.

[code elided]
     
    If I reboot, load the appropriate systems, then load this patch file, I get some message
    to the effect that I'm trying to reference external symbol gantt:rename which has not been
    exported.  I made sure that gantt:rename was exported in my world when I compiled the
    patch file, but still no go.  What's the secret??

Your likely problem is that you compiled the patch file with the symbol
exported, but in a fresh world, the symbol is no longer external. Try
recompiling the patch file after loading your systems.

For simple cases, you can simply put the EXPORT form at the end of the
patch file, and let the attribute list handle the package details:

;=====================================
(SYSTEM-INTERNALS:BEGIN-PATCH-SECTION)
(SYSTEM-INTERNALS:PATCH-SECTION-SOURCE-FILE "AISIS-V2:GANTT;INTERFACE.LISP.11")
(SYSTEM-INTERNALS:PATCH-SECTION-ATTRIBUTES
  "-*- Syntax: Common-lis1p0; Mode: LISP; Default-character-style: (:FIX :ROMAN :NORMAL); Package: GANTT; Lowercase: Yes -*-")

(defun 2rename 0(old-name new-name &key (must-be-current t))
	...)

(export 'rename)

John Krieger (s9274@srl1.lanl.gov)
Westinghouse Savannah River Company