<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/libexec/flua, branch releng/12.4</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.4</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F12.4'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2021-02-03T06:58:18Z</updated>
<entry>
<title>stand: lua: enhance lfs.dir() to speed up kernels_autodetect</title>
<updated>2021-02-03T06:58:18Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2021-01-24T01:32:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=32b391d4a99c8c3a52ea1d2c0c82ee3208b77a19'/>
<id>urn:sha1:32b391d4a99c8c3a52ea1d2c0c82ee3208b77a19</id>
<content type='text'>
This eliminates a lot of stat() calls that happen when lualoader renders the
menu with the default settings, and greatly speeds up rendering on my
laptop.

ftype is nil if loader/loader.efi hasn't been updated yet, falling back to
lfs.attributes() to test.

This is technically incompatible with lfs, but not in a particularly
terrible way.

(cherry picked from commit e25ee296c919d6567aa76058a7049eac974797fb)
</content>
</entry>
<entry>
<title>flua: implement chmod</title>
<updated>2021-01-24T03:49:11Z</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2020-03-13T15:40:35Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=f817905593d484861e1ffcb6c882ff7410bfe00c'/>
<id>urn:sha1:f817905593d484861e1ffcb6c882ff7410bfe00c</id>
<content type='text'>
Lua does not provide a native way to change the permission of a file.

(cherry picked from commit 405e3338ac841999673056a2b5537b4c0ad677db)
</content>
</entry>
<entry>
<title>flua: don't allow dlopen, et al., for bootstrap flua</title>
<updated>2021-01-24T03:43:26Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-08-14T02:22:19Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bd98a274d0edbf596c40435335a37282adaebdb0'/>
<id>urn:sha1:bd98a274d0edbf596c40435335a37282adaebdb0</id>
<content type='text'>
There are some logistics issues that need to be sorted out here before we
can actually allow this to work.

It's not really safe to allow LUA_USE_DLOPEN with host lib paths being used.
The host system could have an entirely different lua version and this could
cause us to crash and burn.

If we want to revive this later, we need to make sure to define c module
paths inside OBJDIR that are compiled against whatever version we've
bootstrapped.

(cherry picked from commit c2a2b4f3cf11e770892a524df637f671f5989719)
(cherry picked from commit 967fbfd9e2b7a015d5cba1491badcdf9044b28b9)
</content>
</entry>
<entry>
<title>flua: support "require" for binary objects in the base system</title>
<updated>2021-01-24T03:43:24Z</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2020-08-13T23:13:05Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=6a61f08108fe863efdb1170125c69d39ec171b30'/>
<id>urn:sha1:6a61f08108fe863efdb1170125c69d39ec171b30</id>
<content type='text'>
Export symbols from flua, and enable dlopen.

(cherry picked from commit 3bd8419597b44dc3da2b1e6ffc2c7ee9cf4aa195)
</content>
</entry>
<entry>
<title>MFC r359045 (by brooks):</title>
<updated>2020-04-25T18:23:23Z</updated>
<author>
<name>Dimitry Andric</name>
<email>dim@FreeBSD.org</email>
</author>
<published>2020-04-25T18:23:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=b810f1f9801e1dcf8b562e14c9e61af427108640'/>
<id>urn:sha1:b810f1f9801e1dcf8b562e14c9e61af427108640</id>
<content type='text'>
Add an internal liblua and use it in flua.

The new liblua will be used in a forthcoming import of kyua.

Reviewed by:	kevans
Obtained from:	CheriBSD
Sponsored by:	DARPA
Differential Revision:	https://reviews.freebsd.org/D24090
</content>
</entry>
<entry>
<title>MFC r359453, r359455</title>
<updated>2020-04-06T04:06:15Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2020-04-06T04:06:15Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=419c082142301c6f5e999157435abea8b1bcbc8d'/>
<id>urn:sha1:419c082142301c6f5e999157435abea8b1bcbc8d</id>
<content type='text'>
r359453:
flua: enable readline bits, courtesy of libedit

This is a nicer experience when attempting to run ad-hoc lua bits in the
flua REPL.

r359455:
flua: follow-up to r359453, don't bother with libedit in bootstrap

The bootstrap flua should not be used for REPL-like activities; exclude it
to save the dependency on libedit and not waste time with it.

PR:		245121
</content>
</entry>
<entry>
<title>MFC r354245, r354833, r354837: add flua to the base system</title>
<updated>2019-12-03T18:25:16Z</updated>
<author>
<name>Kyle Evans</name>
<email>kevans@FreeBSD.org</email>
</author>
<published>2019-12-03T18:25:16Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=7825c2df5bf93ddc6d0aeb82825604b1a9cd59f2'/>
<id>urn:sha1:7825c2df5bf93ddc6d0aeb82825604b1a9cd59f2</id>
<content type='text'>
r354245: stand: consolidate knowledge of lua path

Multiple places coordinate to 'know' where lua scripts are installed. Knock
this down to being formally defined (and overridable) in exactly one spot,
defs.mk, and spread the knowledge to loaders and liblua alike. A future
commit will expose this to lua as loader.lua_path, so it can build absolute
paths to lua scripts as needed.

r354833: Add flua to the base system, install to /usr/libexec

FreeBSDlua ("flua") is a FreeBSD-private lua, flavored with whatever
extensions we need for base system operations. We currently support a subset
of lfs and lposix that are used in the rewrite of makesyscall.sh into lua,
added in r354786.

flua is intentionally written such that one can install standard lua and
some set of lua modules from ports and achieve the same effect.

linit_flua is a copy of linit.c from contrib/lua with lfs and lposix added
in. This is similar to what we do in stand/. linit.c has been renamed to
make it clear that this has flua-specific bits.

luaconf has been slightly obfuscated to make extensions more difficult. Part
of the problem is that flua is already hard enough to use as a bootstrap
tool because it's not in PATH- attempting to do extension loading would
require a special bootstrap version of flua with paths changed to protect
the innocent.

src.lua.mk has been added to make it easy for in-tree stuff to find flua,
whether it's bootstrap-flua or relying on PATH frobbing by Makefile.inc1.

r354837: flua: newer GCC complains about format-nonliteral at WARNS=2

Disable that one, too.
</content>
</entry>
</feed>
