commit 67b6aca

chld  ·  2026-09-13 03:13:59 +0000 UTC
parent 09d5d5b
temporaily copy libsh
1 files changed,  +44, -17
+44, -17
 1@@ -8,28 +8,28 @@
 2 	   (n 0)
 3 	   )
 4     (if (= n (length p))
 5-      #f
 6-      (let (
 7-	    (d (list-ref p n))
 8-	    (r #f)
 9-	    )
10-	(ftw d
11-	     (lambda (f s l)
12-	       (when (and (eq? (stat:type s) 'directory)
13-		      (string=? (basename f) pkg))
14-		 (set! r f))
15-	       #t))
16-	(if r r
17-	  (pp p (+ n 1)))	  
18-      ))
19+	#f
20+	(let (
21+	      (d (list-ref p n))
22+	      (r #f)
23+	      )
24+	  (ftw d
25+	       (lambda (f s l)
26+		 (when (and (eq? (stat:type s) 'directory)
27+			    (string=? (basename f) pkg))
28+		   (set! r f))
29+		 #t))
30+	  (if r r
31+	      (pp p (+ n 1)))	  
32+	  ))
33     )
34   )
35 
36 (define (find-pkg pkg)
37   (if (_find-pkg pkg)
38       (_find-pkg pkg)
39-    (die (format #f "package ~a not found" pkg) 1)
40-    )
41+      (die (format #f "package ~a not found" pkg) 1)
42+      )
43   )
44 
45 (define (ver-pkg pkg)
46@@ -166,9 +166,36 @@
47 
48 (define (build-pkg pkg)
49   (pmsg pkg "beginning build")
50-  (chdir "/ports")
51+
52+  ;; anything except overlay
53+  ;; dirname until its a member of split DULL_PATH
54+  (define op "")
55+  (let dp
56+      ((m (find-pkg pkg)))
57+    (if (member m (string-split DULL_PATH #\:))
58+	(set! op m)
59+	(dp (dirname m))
60+	)
61+    )
62+
63+  ;; so it can source libdmake
64+  (unless (and (string=? op (last (string-split DULL_PATH #\:)))
65+	       (file-exists? (format #f "~a/libsh/libdmake.sh" op))
66+	       (file-exists? (format #f "~a/libsh" op))
67+	       )
68+    (mkdir (format #f "~a/libsh" op))
69+    (copy-file (format #f "~a/libsh/libdmake.sh" (last (string-split DULL_PATH #\:)))
70+	       (format #f "~a/libsh/libdmake.sh" op))
71+    )
72+  
73   (system*
74    "sh" (format #f "~a/ndmake.sh" (find-pkg pkg))
75    "make"
76    )
77+
78+
79+  (unless (string=? op (last (string-split DULL_PATH #\:)))
80+    (delete-file (format #f "~a/libsh/libdmake.sh" op))
81+    (rmdir (format #f "~a/libsh" op))
82+    )
83   )