Make work from only url with clean folder.

Add hard depencies definitions for version.scm that prevented building on some systems.
This commit is contained in:
Cor Legemaat 2025-08-14 18:42:05 +02:00
parent 97e30a68ec
commit 6071222b67
5 changed files with 36 additions and 4 deletions

View file

@ -15,7 +15,7 @@ ebuild-autogen. If not, see <https://www.gnu.org/licenses/>.
m4_define([version_major], [0]) m4_define([version_major], [0])
m4_define([version_minor], [0]) m4_define([version_minor], [0])
m4_define([version_revision], [1]) m4_define([version_revision], [2])
AC_PACKAGE_URL([http://www.cor.za.net/code/ebuild-autogen]) AC_PACKAGE_URL([http://www.cor.za.net/code/ebuild-autogen])
AC_INIT(ebuild-autogen, AC_INIT(ebuild-autogen,

View file

@ -29,6 +29,12 @@ SOURCES = \
utils.scm \ utils.scm \
version.scm version.scm
# Manual dependencys.
cli.go: version.scm
defs.go: version.scm
gen.go: version.scm
repo.go: version.scm
GOBJECTS = $(SOURCES:%.scm=%.go) GOBJECTS = $(SOURCES:%.scm=%.go)
nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES) nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES)

View file

@ -24,6 +24,13 @@ SOURCES = \
pypi.scm \ pypi.scm \
raw.scm raw.scm
# Manual dependencys.
ebuild.go: ../version.scm
forgejo.go: ../version.scm
github.go: ../version.scm
pypi.go: ../version.scm
raw.scm: ../version.scm
GOBJECTS = $(SOURCES:%.scm=%.go) GOBJECTS = $(SOURCES:%.scm=%.go)
nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES) nobase_mod_DATA = $(SOURCES) $(NOCOMP_SOURCES)
@ -46,3 +53,7 @@ GUILE_OPTS = -L $(abs_top_builddir)
SUFFIXES = .scm .go SUFFIXES = .scm .go
.scm.go: .scm.go:
$(GUILD) compile $(GUILE_TARGET) $(GUILE_OPTS) $(GUILE_WARNINGS) -o "$@" "$<" $(GUILD) compile $(GUILE_TARGET) $(GUILE_OPTS) $(GUILE_WARNINGS) -o "$@" "$<"
# Build dep in parent folder.
../version.scm:
$(am__cd) ../ && $(MAKE) $(AM_MAKEFLAGS) version.scm

View file

@ -60,6 +60,7 @@
(files (assoc-ref data "files"))) (files (assoc-ref data "files")))
(map (lambda (version) (map (lambda (version)
(list (cons "version" version) (list (cons "version" version)
;;TODO handle not found.
(car (car ((dql (select (filter (where (lambda (file-name) (car (car ((dql (select (filter (where (lambda (file-name)
(if (string? file-name) (if (string? file-name)
(string-contains file-name (string-contains file-name

View file

@ -48,7 +48,14 @@
(newline)) (newline))
(lambda () (lambda ()
(repository-discover path))))) (repository-discover path)))))
(let ((repo-root (dirname repo-orig))) (let ((repo-root ;;(dirname repo-orig)
(string-join (take-while
(lambda (file)
(not (string=? file ".git")))
(string-split repo-orig
(car (string->list
file-name-separator-string))))
file-name-separator-string)))
(if (>= verbosity verbosity-notice) (if (>= verbosity verbosity-notice)
(begin (display "Using repository: ") (begin (display "Using repository: ")
(display repo-root) (display repo-root)
@ -66,7 +73,13 @@
(define-public repo-clone (define-public repo-clone
(lambda (url folder) (lambda (url folder)
"" ""
(clone url folder))) (clone url folder)
(chdir folder)
(system* "/usr/bin/git" "submodule" "update" "--init" "--recursive")
;; (chdir (string-join (list folder "autogen")
;; file-name-separator-string))
;; (system* "/usr/bin/git" "checkout" "main")
(chdir folder)))
(define-public repo-update-src (define-public repo-update-src
(lambda (path) (lambda (path)
@ -121,7 +134,8 @@
(finish (lambda () (finish (lambda ()
(if (string-suffix? ".ebuild" file-dst) (if (string-suffix? ".ebuild" file-dst)
(system* "ebuild" (system* "ebuild"
(string-join (list folder-dst (string-join (list repo
folder-dst
file-dst) file-dst)
file-name-separator-string) file-name-separator-string)
"manifest")) "manifest"))