aboutsummaryrefslogtreecommitdiff
path: root/lib/libstand/Makefile
Commit message (Collapse)AuthorAgeFilesLines
* Move lib/libstand to sys/boot/libsaWarner Losh2017-10-121-163/+0
| | | | | | | | | | Move the sources to sys/boot. Make adjustments related to the move. Kill LIBSTAND_SRC since it's no longer needed. Sponsored by: Netflix Notes: svn path=/head/; revision=324551
* Add stpcpy and stpncpy to libstandWarner Losh2017-08-041-1/+1
| | | | | | | | | This adds the stpcpy and stpncpy functions to libstand. Differential Revision: https://reviews.freebsd.org/D11844 Notes: svn path=/head/; revision=322037
* loader: add ip layer code into libstandToomas Soome2017-05-151-1/+1
| | | | | | | | | | | | | | | | Implement simple separate ip module and fragment re-assembly. The work is based on send and receive previously implemented in udp.c, moved to ip.c and added the ip fragment re-assembly. This change allows to specify larger tftp or nfs payload, such as: tftp.blksize=4096 or nfs.read_size=4096 Reviewed by: bapt Differential Revision: https://reviews.freebsd.org/D10631 Notes: svn path=/head/; revision=318320
* Add explicit_bzero() to libstand, and switch GELIBoot to using itAllan Jude2017-03-311-0/+4
| | | | | | | | | | | Make sure sensitive memory is properly cleared when finished with it Reviewed by: Eric McCorkle <eric@metricspace.net> Sponsored by: ScaleEngine Inc. Differential Revision: https://reviews.freebsd.org/D9798 Notes: svn path=/head/; revision=316311
* Restructure libz, place vendor files in contrib/zlib like other thirdXin LI2017-01-041-3/+3
| | | | | | | | | | | | | | | | | | | | | | | party software, this provides more standarized import workflow and makes future upgrades easier. The following files are new with this commit: zconf.h.in zlib.map zlib.pc.in They are not connected to build, but were kept in tree for reference for future maintenance. All our local trivial changes were applied to contrib/zlib, and the contrib/zlib vendor source code is intended to 100% match lib/libz before this commit. MFC after: 2 weeks Notes: svn path=/head/; revision=311275
* MFHGlen Barber2016-04-041-1/+1
|\ | | | | | | | | | | | | Sponsored by: The FreeBSD Foundation Notes: svn path=/projects/release-pkg/; revision=297567
| * Garbage collect the bswap routines from libstand. The declaration wasIan Lepore2016-03-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | wrapped in an i386 ifdef with a comment questioning their usefulness even there. It turns out they aren't referenced anywhere, but their presence prevents using sys/endian.h in libstand code. These days, sys/endian.h provides much better support for such things, using compiler builtins and inline functions (and creating connections between libstand code and header files from sys/ would not be breaking new ground). Notes: svn path=/head/; revision=297147
* | MFHGlen Barber2016-03-061-0/+4
|\| | | | | | | | | | | | | Sponsored by: The FreeBSD Foundation Notes: svn path=/projects/release-pkg/; revision=296422
| * Merge ^/head r294169 through r294598.Dimitry Andric2016-01-221-2/+2
| |\ | | | | | | | | | Notes: svn path=/projects/clang380-import/; revision=294599
| * \ Merge ^/head r293280 through r293429.Dimitry Andric2016-01-081-1/+1
| |\ \ | | | | | | | | | | | | Notes: svn path=/projects/clang380-import/; revision=293430
| * | | Similar to r293384, for libstand, also use the new -mno-movt flag withDimitry Andric2016-01-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | clang >= 3.8.0 targeting arm. Notes: svn path=/projects/clang380-import/; revision=293426
* | | | First pass through library packaging.Glen Barber2016-02-041-0/+1
| |_|/ |/| | | | | | | | | | | | | | | | | Sponsored by: The FreeBSD Foundation Notes: svn path=/projects/release-pkg/; revision=295278
* | | Bring in initial libc and libstand support for RISC-V.Ruslan Bukin2016-01-171-2/+2
| |/ |/| | | | | | | | | | | | | | | | | Reviewed by: andrew, emaste, kib Sponsored by: DARPA, AFRL Sponsored by: HEIF5 Differential Revision: https://reviews.freebsd.org/D4943 Notes: svn path=/head/; revision=294227
* | Don't install /usr/include/stand.h twice after r293040.Bryan Drewery2016-01-071-1/+1
|/ | | | | | | | | Only install it from lib/libstand. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=293341
* Add fls() to libstandEd Maste2016-01-061-2/+3
| | | | | | | | | | Although we don't use it in tree yet libstand is installed as user- facing /usr/liblibstand.a, and some work in progress makes use of it. Instead of conflicting with ongoing libstand Makefile deduplication, just add it now. Notes: svn path=/head/; revision=293241
* Reduce libstand Makefile duplicationEd Maste2016-01-011-3/+4
| | | | | | | | | | | | | | | | | | | libstand is built in three places (lib/libstand, sys/boot/libstand32, and sys/boot/userboot/libstand). Reduce Makefile duplication by .including libstand/Makefile from sys/boot/libstand32/Makefile. sys/boot/userboot/libstand/Makefile will be addressed later, as it contains additional differences yet to be handled. This change also switches libstand32 to use the new uuid_from_string and uuid_to_string, which was not included in r292473. Reviewed by: jhb Sponsored by: The FreeBSD Foundation Differential Revision: https://reviews.freebsd.org/D4747 Notes: svn path=/head/; revision=293040
* When building libstand for arm, don't emit instructions that requireIan Lepore2015-12-311-0/+6
| | | | | | | | | relocation fixups unsupported by the self_reloc() code, and don't optimize memcpy/memset using floating point registers, because in a standalone environment nothing has initialized the fpu hardware. Notes: svn path=/head/; revision=292993
* Create libstand version of uuid_from_string and uuid_to_string. TheWarner Losh2015-12-191-1/+1
| | | | | | | | | | | | | | normal libc versions of these functions use asprintf and sscanf, both of which aren't available in the libstand world. It's easier to rewrite these than to try to claw those functions into libstand. Also include uuid_create_nil, since it's safe to include. These were written from scratch, except for bits of comments that I got from the libc version, which are acknowledged in the source. Differential Revision: https://reviews.freebsd.org/D4540 Notes: svn path=/head/; revision=292473
* Add strlcat() and strlcpy() to libstand.Ian Lepore2015-12-141-2/+2
| | | | Notes: svn path=/head/; revision=292234
* Use CFLAGS_NO_SIMD in preference to varying lists of -mno-xxxx flags.Warner Losh2015-08-271-26/+1
| | | | | | | | | | | | Go ahead and defined -D_STANDALONE for all targets (only strictly needed for some architecture, but harmless on those it isn't required for). Also add -msoft-float to all architectures uniformly rather that higgley piggley like it is today. Differential Revision: https://reviews.freebsd.org/D3496 Notes: svn path=/head/; revision=287227
* Reduce diffs between the three copies of libstand's MakefileEd Maste2015-04-231-15/+18
| | | | | | | | | | | | | This should be a non-functional change. A future change should address the functional differences between these three and converge on a single source. Differential Revision: https://reviews.freebsd.org/D2058 Reviewed by: jhb Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=281886
* Add the start of libc and libstand for arm64. Not all of the machineAndrew Turner2015-04-071-0/+7
| | | | | | | | | | | dependent functions have been implemented, but this is enough for world. Differential Revision: https://reviews.freebsd.org/D2132 Reviewed by: emaste Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=281197
* The System V ABI for amd64 allows functions to use space in a 128 byteJohn Baldwin2015-03-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | redzone below the stack pointer for scratch space and requires interrupt and signal frames to avoid overwriting it. However, EFI uses the Windows ABI which does not support this. As a result, interrupt handlers in EFI push their interrupt frames directly on top of the stack pointer. If the compiler used the red zone in a function in the EFI loader, then a device interrupt that occurred while that function was running could trash its local variables. In practice this happens fairly reliable when using gzipfs as an interrupt during decompression can trash the local variables in the inflate_table() function resulting in corrupted output or hangs. Fix this by disabling the redzone for amd64 EFI binaries. This requires building not only the loader but any libraries used by the loader without redzone support. Thanks to Jilles for pointing me at the redzone once I found the stack corruption. Differential Revision: https://reviews.freebsd.org/D2054 Reviewed by: imp MFC after: 2 weeks Sponsored by: Cisco Systems, Inc. Notes: svn path=/head/; revision=279949
* Fix loader on PowerPC following r279784. It turns out that, due to .PATHNathan Whitehorn2015-03-091-5/+0
| | | | | | | | | confusion, the _setjmp.S in libstand was never being used and was instead being shadowed by the libc version. Since the libc version now uses FPRs, it caused loader to crash. Notes: svn path=/head/; revision=279798
* Apparently more Makefiles use stuff from compiler-rt, so fix them upDimitry Andric2015-01-081-2/+2
| | | | | | | too. (This did not show during a make universe, strangely.) Notes: svn path=/head/; revision=276853
* Remove MK_ARM_EABI, the armeb issues have been fixed. The code to supportAndrew Turner2014-10-011-4/+0
| | | | | | | | | | | | | | | the oabi is still in the tree, but it is expected this will be removed as developers work on surrounding code. With this commit the ARM EABI is the only supported supported ABI by FreeBSD on ARMa 32-bit processors. X-MFC after: never Relnotes: yes Differential Revision: https://reviews.freebsd.org/D876 Notes: svn path=/head/; revision=272350
* Add pkgfs, a file system implementation for reading files out of aMarcel Moolenaar2014-07-311-0/+1
| | | | | | | | | | | | | | | | | | | | | compressed tarball, aka package. The file system assumes that the files are layed-out in the same order as needed to allow for the package to be streamed. As such, it does not read an entire package into memory first. Some properties of the file system: o Files that start with '+' are silently skipped. These are found in FreeBSD package files. o Files smaller than or equal to 4KB will be cached in memory and as such allow for some flexibility in accessing files out of order. o Files with the .tgz suffix are assumed to be (sub-)packages and signal the end for a directory scan. Obtained from: Juniper Networks, Inc. Notes: svn path=/head/; revision=269361
* Remove ia64.Marcel Moolenaar2014-07-071-13/+0
| | | | | | | | | | | | | | | | | | | | This includes: o All directories named *ia64* o All files named *ia64* o All ia64-specific code guarded by __ia64__ o All ia64-specific makefile logic o Mention of ia64 in comments and documentation This excludes: o Everything under contrib/ o Everything under crypto/ o sys/xen/interface o sys/sys/elf_common.h Discussed at: BSDcan Notes: svn path=/head/; revision=268351
* Use src.opts.mk in preference to bsd.own.mk except where we need stuffWarner Losh2014-05-061-1/+1
| | | | | | | from the latter. Notes: svn path=/head/; revision=265420
* Spell NO_PROFILE= as MK_PROFILE=no.Warner Losh2014-04-251-2/+3
| | | | Notes: svn path=/head/; revision=264928
* Build libstand as a 64-bit library on ppc64Ed Maste2014-02-091-3/+0
| | | | | | | | | | | | The 32-bit bootloaders now link against libstand.a in sys/boot/libstand32, so there is no need to force /usr/lib/libstand.a to be 32-bit. This is equivalent to r261568 for amd64. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=261668
* Build libstand as a 64-bit library on amd64Ed Maste2014-02-061-14/+8
| | | | | | | | | | The 32-bit bootloaders now link against libstand.a in sys/boot/libstand32, so there is no need to force /usr/lib/libstand.a to be 32-bit. Sponsored by: The FreeBSD Foundation Notes: svn path=/head/; revision=261568
* For libstand and sys/boot, split off gcc-only flags into CFLAGS.gcc.Dimitry Andric2013-12-261-1/+1
| | | | | | | | MFC after: 3 days X-MFC-With: r259730 Notes: svn path=/head/; revision=259913
* Enable building string functions as part of libstand on mips; the MakefileRobert Watson2013-04-281-3/+1
| | | | | | | | | | | | is a bit obfuscated here, as ia64 adds string source files elsewhere, so simply exclude it here. Reviewed by: imp MFC after: 3 days Sponsored by: DARPA, AFRL Notes: svn path=/head/; revision=250023
* Use a suitable code generation when building libstand for MIPS.Robert Watson2013-04-161-0/+3
| | | | | | | | | Reviewed by: imp Sponsored by: DARPA, AFRL MFC after: 3 days Notes: svn path=/head/; revision=249554
* Add __clzsi2 and ctzsi2. They are required on ARMv4 and ARMv5 to implementAndrew Turner2013-03-071-0/+3
| | | | | | | a number of builtin functions. Notes: svn path=/head/; revision=247912
* Add strtoul() to libstand by copying from libc and clipping outTim Kientzle2013-02-181-1/+1
| | | | | | | locale code. Notes: svn path=/head/; revision=246931
* * Add the integer div & mod functions and ARM EABI support functions toAndrew Turner2013-02-051-0/+13
| | | | | | | | | libstand. * Stop linking the ARM U-Boot loader against libgcc now libstand has the required symbols. Notes: svn path=/head/; revision=246369
* MFV: Update zlib to 1.2.7.Xin LI2012-06-211-6/+12
| | | | | | | | | | | (x86 assembler optimization disabled for now because it requires the new .cfi_* directives that is not supported by base system binutils). MFC after: 1 week Notes: svn path=/head/; revision=237410
* Import work done under project/nand (@235533) into head.Grzegorz Bernacki2012-05-171-0/+3
| | | | | | | | | | | | | | | | | The NAND Flash environment consists of several distinct components: - NAND framework (drivers harness for NAND controllers and NAND chips) - NAND simulator (NANDsim) - NAND file system (NAND FS) - Companion tools and utilities - Documentation (manual pages) This work is still experimental. Please use with caution. Obtained from: Semihalf Supported by: FreeBSD Foundation, Juniper Networks Notes: svn path=/head/; revision=235537
* Merge index() and strchr() together.Ed Schouten2012-01-031-8/+7
| | | | | | | | | | | | | | | | | | | | As I looked through the C library, I noticed the FreeBSD MIPS port has a hand-written version of index(). This is nice, if it weren't for the fact that most applications call strchr() instead. Also, on the other architectures index() and strchr() are identical, meaning we have two identical pieces of code in the C library and statically linked applications. Solve this by naming the actual file strchr.[cS] and let it use __strong_reference()/STRONG_ALIAS() to provide the index() routine. Do the same for rindex()/strrchr(). This seems to make the C libraries and static binaries slightly smaller, but this reduction in size seems negligible. Notes: svn path=/head/; revision=229368
* Setting warnings without make universe considered harmful. Revert to WARNS=0Warner Losh2011-06-161-1/+1
| | | | | | | until such time that the warnings at =2 are fixed for all platforms. Notes: svn path=/head/; revision=223156
* Increase WARNS level to 2.Craig Rodrigues2011-06-151-1/+1
| | | | Notes: svn path=/head/; revision=223125
* On i386 and amd64, consistently use the following options whenever weDimitry Andric2011-01-051-1/+1
| | | | | | | | | want to avoid using any "advanced" CPU features: -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float Notes: svn path=/head/; revision=217033
* In lib/libstand, sys/boot/ficl and sys/boot/zfs, -mno-sse3 should alsoDimitry Andric2011-01-051-4/+1
| | | | | | | be used for amd64, not just for i386. Notes: svn path=/head/; revision=217029
* MFtbemd:Warner Losh2010-08-231-13/+13
| | | | | | | | Prefer MACHNE_CPUARCH to MACHINE_ARCH in most contexts where you want to test of all the CPUs of a given family conform. Notes: svn path=/head/; revision=211725
* Teach libstand what to do for powerpc64: the same thing as powerpc. LikeNathan Whitehorn2010-07-101-6/+8
| | | | | | | | amd64, libstand apps for powerpc64 systems are 32-bit, due to 32-bit Open Firmware implementations. Notes: svn path=/head/; revision=209882
* Build lib/ with WARNS=6 by default.Ed Schouten2010-01-021-0/+2
| | | | | | | | | | | | Similar to libexec/, do the same with lib/. Make WARNS=6 the norm and lower it when needed. I'm setting WARNS?=0 for secure/. It seems secure/ includes the Makefile.inc provided by lib/. I'm not going to touch that directory. Most of the code there is contributed anyway. Notes: svn path=/head/; revision=201381
* Use GCC's __SOFTFP__ to test whether we're being compiledMarcel Moolenaar2009-05-311-1/+1
| | | | | | | | with softfloat or not. Now -msoft-float can be overridden more easily. Notes: svn path=/head/; revision=193145
* Fix build when WITH_SSP is set explicitly.Ruslan Ermilov2009-02-211-1/+3
| | | | | | | Submitted by: Jeremie Le Hen Notes: svn path=/head/; revision=188895