```common lisp
;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*-
(in-package :cl-user)

(defpackage "CLIM-LISTENER"
  (:use "CLIM" "CLIM-LISP")
  (:export #:run-listener #:dev-commands))

(in-package :clim-listener)

(eval-when (:load-toplevel)
;  (format t "~&~%!@#%^!@#!@ ... ~A~%~%" *load-truename*)
  (defparameter *icon-path* (merge-pathnames #P"icons/" *load-truename*)))
```

Patch from Martin Raspaud to make the Listener compile when fasl directory != source directory.
user
```common lisp
;;; -*- Mode: LISP; Syntax: COMMON-LISP; Package: CL-USER; Base: 10 -*-
(in-package :cl-user)

(defpackage "CLIM-LISTENER"
  (:use "CLIM" "CLIM-LISP")
  (:export #:run-listener #:dev-commands))

(in-package :clim-listener)

(eval-when (:load-toplevel)
;  (format t "~&~%!@#%^!@#!@ ... ~A~%~%" *load-truename*)
  (defparameter *icon-path* (merge-pathnames
                             #P"icons/"
                             (load-time-value (or #.*compile-file-pathname* *load-pathname*)))))
```
assistant