devel/stlink: Fix build on 32 bit platforms
* Remove settings of optimization from cmake/modules/c_flags.cmake as
per section 13.9 of Porter's Handbook
* Switch to DISTVERSION
* Pet portclippy
* Reformat Makefile with portfmt
PR: 257708
Approved by: maitainer timeout (> 1 month)
Differential Revision: https://reviews.freebsd.org/D32545
(cherry picked from commit b6534ecd95
)
This commit is contained in:
parent
69221920c9
commit
8c44014b13
6 changed files with 77 additions and 26 deletions
|
@ -1,7 +1,6 @@
|
|||
PORTNAME= stlink
|
||||
PORTVERSION= 1.7.0
|
||||
DISTVERSION= 1.7.0
|
||||
DISTVERSIONPREFIX= v
|
||||
PORTREVISION= 0
|
||||
CATEGORIES= devel
|
||||
|
||||
MAINTAINER= lev@FreeBSD.org
|
||||
|
@ -9,27 +8,25 @@ COMMENT= STM32 ST-Link JTAG variant tools
|
|||
|
||||
LICENSE= BSD3CLAUSE
|
||||
|
||||
OPTIONS_DEFINE= GTK3 DOCS
|
||||
OPTIONS_SUB= yes
|
||||
GTK3_EXTRA_PATCHES_OFF= ${FILESDIR}/extra-pacth-turn-off-gtk
|
||||
GTK3_USES= gnome
|
||||
GTK3_USE= GNOME=gtk30
|
||||
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= stlink-org
|
||||
|
||||
USES= cmake pkgconfig
|
||||
USE_CSTD= c99
|
||||
USE_GITHUB= yes
|
||||
GH_ACCOUNT= stlink-org
|
||||
USE_LDCONFIG= yes
|
||||
|
||||
PORTDOCS= README.md ${ALLDOCS}
|
||||
PORTDOCS= ${ALLDOCS} README.md
|
||||
|
||||
ALLDOCS= compiling.md dev/developer.txt devices_boards.md \
|
||||
flashloaders.md release.md tutorial.md \
|
||||
version_support.md
|
||||
|
||||
FLASHLOADERS= cleanroom.md linker.ld Makefile stm32f0.s stm32f4.s \
|
||||
stm32f4lv.s stm32f7.s stm32f7lv.s stm32l4.s stm32lx.s \
|
||||
flashloaders.md release.md tutorial.md version_support.md
|
||||
|
||||
FLASHLOADERS= cleanroom.md linker.ld Makefile stm32f0.s stm32f4.s stm32f4lv.s \
|
||||
stm32f7.s stm32f7lv.s stm32l4.s stm32lx.s
|
||||
|
||||
OPTIONS_DEFINE= DOCS GTK3
|
||||
OPTIONS_SUB= yes
|
||||
GTK3_USES= gnome
|
||||
GTK3_USE= GNOME=gtk30
|
||||
GTK3_EXTRA_PATCHES_OFF= ${FILESDIR}/extra-pacth-turn-off-gtk
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
|
|
|
@ -1,8 +1,10 @@
|
|||
--- CMakeLists.txt.orig 2021-07-13 15:04:41.612208000 +0300
|
||||
+++ CMakeLists.txt 2021-07-13 15:06:16.763751332 +0300
|
||||
@@ -299,4 +299,5 @@
|
||||
--- CMakeLists.txt.orig 2021-09-15 09:54:35 UTC
|
||||
+++ CMakeLists.txt
|
||||
@@ -298,6 +298,7 @@ endif ()
|
||||
# add_subdirectory(src/stlink-gui) # contains subordinate CMakeLists to build GUI
|
||||
add_subdirectory(tests) # contains subordinate CMakeLists to build test executables
|
||||
add_subdirectory(cmake/packaging) # contains subordinate CMakeLists to build packages
|
||||
+add_subdirectory(doc/dev/pkg-config) # contains subordinate CMakeLists to build pkg-config descriptor
|
||||
|
||||
option(STLINK_GENERATE_MANPAGES "Generate manpages with pandoc" OFF)
|
||||
add_subdirectory(doc/man) # contains subordinate CMakeLists to generate manpages
|
||||
|
|
18
devel/stlink/files/patch-cmake_modules_c__flags.cmake
Normal file
18
devel/stlink/files/patch-cmake_modules_c__flags.cmake
Normal file
|
@ -0,0 +1,18 @@
|
|||
Work around upstream bug #1175 and make the build more robust
|
||||
against minor platform differences. -Werror should not be
|
||||
provided in release builds.
|
||||
|
||||
--- cmake/modules/c_flags.cmake.orig 2021-04-24 22:24:02 UTC
|
||||
+++ cmake/modules/c_flags.cmake
|
||||
@@ -44,11 +44,3 @@ endif ()
|
||||
if (NOT (WIN32 OR (EXISTS "/etc/debian_version" AND MINGW)))
|
||||
add_cflag_if_supported("-fPIC")
|
||||
endif ()
|
||||
-
|
||||
-if (${CMAKE_BUILD_TYPE} MATCHES "Debug")
|
||||
- add_cflag_if_supported("-ggdb")
|
||||
- add_cflag_if_supported("-O0")
|
||||
-else ()
|
||||
- add_cflag_if_supported("-O2")
|
||||
- add_cflag_if_supported("-Werror")
|
||||
-endif ()
|
|
@ -1,6 +1,6 @@
|
|||
--- doc/dev/pkg-config/CMakeLists.txt.orig 2021-04-25 01:24:02.000000000 +0300
|
||||
+++ doc/dev/pkg-config/CMakeLists.txt 2021-07-13 15:09:25.486974252 +0300
|
||||
@@ -11,5 +11,5 @@
|
||||
--- doc/dev/pkg-config/CMakeLists.txt.orig 2021-04-24 22:24:02 UTC
|
||||
+++ doc/dev/pkg-config/CMakeLists.txt
|
||||
@@ -11,5 +11,5 @@ configure_file(
|
||||
|
||||
install(
|
||||
FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.pc"
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- doc/man/CMakeLists.txt.orig 2021-07-13 15:08:26.986789558 +0300
|
||||
+++ doc/man/CMakeLists.txt 2021-04-25 01:24:02.000000000 +0300
|
||||
@@ -30,7 +30,7 @@
|
||||
--- doc/man/CMakeLists.txt.orig 2021-04-24 22:24:02 UTC
|
||||
+++ doc/man/CMakeLists.txt
|
||||
@@ -30,7 +30,7 @@ foreach (manpage ${MANPAGES})
|
||||
endif ()
|
||||
|
||||
if (f AND NOT WIN32)
|
||||
|
|
34
devel/stlink/files/patch-src_common.c
Normal file
34
devel/stlink/files/patch-src_common.c
Normal file
|
@ -0,0 +1,34 @@
|
|||
Partial application of upstream commit c8fc656, closing
|
||||
upstream bug #985 and #1175 and fixing the build on 32
|
||||
bit platforms.
|
||||
|
||||
https://github.com/stlink-org/stlink/commit/c8fc6561fead79ad49c09d82bab864745086792c
|
||||
https://github.com/stlink-org/stlink/issues/985
|
||||
https://github.com/stlink-org/stlink/issues/1175
|
||||
|
||||
--- src/common.c.orig 2021-04-24 22:24:02 UTC
|
||||
+++ src/common.c
|
||||
@@ -1,4 +1,5 @@
|
||||
#define DEBUG_FLASH 0
|
||||
+#include <limits.h>
|
||||
#include <stdarg.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
@@ -2205,7 +2206,7 @@ static int map_file(mapped_file_t *mf, const char *pat
|
||||
|
||||
if (sizeof(st.st_size) != sizeof(size_t)) {
|
||||
// on 32 bit systems, check if there is an overflow
|
||||
- if (st.st_size > (off_t)INT32_MAX) {
|
||||
+ if (st.st_size > (off_t)SSIZE_MAX) {
|
||||
fprintf(stderr, "mmap() size_t overflow for file %s\n", path);
|
||||
goto on_error;
|
||||
}
|
||||
@@ -2219,7 +2220,7 @@ static int map_file(mapped_file_t *mf, const char *pat
|
||||
goto on_error;
|
||||
}
|
||||
|
||||
- mf->len = st.st_size;
|
||||
+ mf->len = (size_t)st.st_size;
|
||||
error = 0; // success
|
||||
|
||||
on_error:
|
Loading…
Reference in a new issue