Skip to content

Commit c04a832

Browse files
authored
Set version-string, shorten slug, merge commands
- Make prefix dir, binary symlink and package name shorter - Merge two sed commands - Set version-string (for dev version running zig-xyz version shows full dev version)
1 parent 04a1cd7 commit c04a832

File tree

2 files changed

+15
-9
lines changed

2 files changed

+15
-9
lines changed

README.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -120,6 +120,9 @@ $ zig-master version
120120
0.14.0
121121
### For lang/zig-0.14.0 you'd have to run zig-0.14.0 or
122122
### if you've changed DISTNAME, type "zig" and press tab twice for hint.
123+
### Example:
124+
### $ zig-0.14.0-dev.3462 version
125+
### 0.14.0-dev.3462+edabcf619
123126

124127
### typing zig-master every time is boring, so...
125128
$ alias zig=zig-master

pkgsrc/lang/zig-0.14.0/Makefile

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -18,14 +18,14 @@ DISTNAME= zig-0.14.0
1818
##
1919
## We prepare a version suffix code to make the name unique.
2020
## Example values:
21-
## - "zig-0.14.0-dev.3462+edabcf619" becomes "0140dev3462+edabcf619"
21+
## - "zig-0.14.0-dev.3462+edabcf619" becomes "0140dev3462"
2222
## - "zig-0.14.0" becomes "0140"
23-
APPEND_VER= ${DISTNAME:S/zig-//:S/.//g:S/-//}
23+
APPEND_VER= ${DISTNAME:S/zig-//:S/.//g:S/-//:C/\+.*$//}
2424
## Finally appending the version code creates our unique package name.
2525
## e.g. "zig-isolated0140" or "zig-isolated0140dev3462+edabcf619". Both
2626
## should be able to be installed at the same time.
2727
PKGNAME= ${DISTNAME:S/zig-/zig-isolated${APPEND_VER}-/}
28-
PKGREVISION= 3
28+
PKGREVISION= 4
2929
CATEGORIES= lang
3030
## https://ziglang.org/builds/ is the official
3131
MASTER_SITES= https://ziglang.org/builds/
@@ -35,9 +35,10 @@ EXTRACT_SUFX= .tar.xz
3535
## Used mainly for /usr/pkg/xx directory and binary symlink name.
3636
## e.g. If this is "zig-0.14.0" (a) zig will be installed in
3737
## /usr/pkg/zig-0.14.0, (b) symlinked as /usr/pkg/bin/zig-0.14.0 and
38-
## (c) can be used by running "zig-0.14.0". Replaces "+" with "_" for
39-
## broken symbolic link fix for dev versions.
40-
PACKAGE_SLUG= ${DISTNAME:S/+/_/}
38+
## (c) can be used by running "zig-0.14.0". "+" causes Zig binary to not
39+
## be available on double tab press. We remove "+" as fix and following
40+
## chars to make it shorter.
41+
PACKAGE_SLUG= ${DISTNAME:C/\+.*$//}
4142

4243
MAINTAINER= [email protected]
4344
HOMEPAGE= https://ziglang.org/
@@ -90,21 +91,23 @@ MKPIE_SUPPORTED= no
9091
# TODO: /usr/bin/env + /bin/env in lib/std/zig/system.zig
9192

9293
pre-configure:
93-
## Make zig build see LD_LIBRARY_PATH (e.g. path to
94+
## - Make zig build see LD_LIBRARY_PATH (e.g. path to
9495
## "libclang-cpp.so.xx.y")
96+
## - Set version string (esp. for dev builds)
97+
## - Make stage3 zig build process (build.zig) see the path
9598
${SED} -i'_orig' \
9699
-e '1{h;s,.*,set(ENV{LD_LIBRARY_PATH} "'${LLVM_ISOLATED_PREFIX}'/lib:/usr/pkg/lib:/usr/lib:$$\ENV{LD_LIBRARY_PATH}")\n,;G;}' \
97100
-e '1{h;s,.*,set(ENV{LIBRARY_PATH} "'${LLVM_ISOLATED_PREFIX}'/lib:/usr/pkg/lib:/usr/lib:$$\ENV{LIBRARY_PATH}")\n,;G;}' \
98101
-e '1{h;s,.*,set(ENV{LDFLAGS} "-Wl\,-R'${LLVM_ISOLATED_PREFIX}'/lib -L'${LLVM_ISOLATED_PREFIX}'/lib $$\ENV{LDFLAGS}")\n,;G;}' \
102+
-e '/set(ZIG_VERSION/ s,set(ZIG_VERSION "",set(ZIG_VERSION "${DISTNAME:S/zig-//}",' \
103+
-e '/$${CMAKE_PREFIX_PATH}/ s,^,list(APPEND ZIG_CMAKE_PREFIX_PATH "${LLVM_ISOLATED_PREFIX}")\n,' \
99104
${WRKDIR}/${DISTNAME}/CMakeLists.txt
100105
## Fix paths when lang/clang is already installed on system
101106
${SED} -i'_orig' \
102107
-e '1{h;s,.*,set(LLVM_INCLUDE_DIRS "'${LLVM_ISOLATED_PREFIX}'/include:$$\{LLVM_INCLUDE_DIRS}")\n,;G;}' \
103108
-e '1{h;s,.*,set(LLVM_LIBDIRS "'${LLVM_ISOLATED_PREFIX}'/lib:$$\{LLVM_LIBDIRS}")\n,;G;}' \
104109
-e '1{h;s,.*,set(CMAKE_PREFIX_PATH "'${LLVM_ISOLATED_PREFIX}'")\n,;G;}' \
105110
${WRKDIR}/${DISTNAME}/cmake/Findclang.cmake
106-
## Make stage3 zig build process (build.zig) see the path
107-
${SED} -i'_orig' -e '/$${CMAKE_PREFIX_PATH}/ s,^,list(APPEND ZIG_CMAKE_PREFIX_PATH "${LLVM_ISOLATED_PREFIX}")\n,' ${WRKDIR}/${DISTNAME}/CMakeLists.txt
108111

109112
post-configure:
110113
## Workaround for making CMake see the isolated prefix

0 commit comments

Comments
 (0)