advent.asd @ ff7c8ed35992

2021/01 (and add uncommitted stuff from 2020)
author Steve Losh <steve@stevelosh.com>
date Wed, 01 Dec 2021 20:54:23 -0500
parents 182bdd87fd9e
children 77fa6a483e0e
(defclass auto-module (module) ())

(defmethod component-children ((self auto-module))
  (mapcar (lambda (p) (make-instance 'cl-source-file :type "lisp"
                        :pathname p
                        :name (pathname-name p)
                        :parent (component-parent self)))
          (directory-files (component-pathname self)
                           (make-pathname :directory nil :name *wild* :type "lisp"))))


(asdf:defsystem :advent
  :description "Advent of Code solutions"

  :author "Steve Losh <steve@stevelosh.com>"

  :license "MIT"

  :depends-on (

               :1am
               :alexandria
               :beast
               :bordeaux-threads
               :cl-digraph
               :cl-digraph.dot
               :cl-interpol
               :cl-netpbm
               :cl-ppcre
               :iterate
               :jpl-queues
               :losh
               :md5
               :named-readtables
               :pileup
               :split-sequence
               :str

               )

  :serial t
  :components ((:file "package")
               (:module "src" :serial t
                :components ((:file "utils")
                             (:module "2016" :serial t
                              :components ((:auto-module "days")))
                             (:module "2017" :serial t
                              :components ((:file "number-spiral")
                                           (:file "knot-hash")
                                           (:auto-module "days")))
                             (:module "2018" :serial t
                              :components ((:auto-module "days")))
                             (:module "2019" :serial t
                              :components ((:file "intcode")
                                           (:auto-module "days")))
                             (:module "2020" :serial t
                              :components ((:auto-module "days")))
                             (:module "2021" :serial t
                              :components ((:auto-module "days")))))))