Commit Graph

137 Commits (59eac5686f5bf69b5bf5ec0252ae9ef273fc176a)

Author SHA1 Message Date
Alexander Medvednikov 01caee5b53 include <pthread> on macOS 2019-07-22 13:45:02 +02:00
Delyan Angelov a65ae726ee live reload: fix SIGSEGV when calling dlclose, while a live fn is still running. 2019-07-22 12:25:41 +02:00
Alexander Medvednikov e11c23a817 main.v: print how much time cc() took; more flags explained 2019-07-21 19:42:51 +02:00
joe-conigliaro 135f200ea2 modules: cyclic import detection 2019-07-21 17:53:35 +02:00
Alexander Medvednikov 23c5f88f3e Revert "Windows Unicode I/O "
This reverts commit 3e005074a3.
2019-07-21 17:29:40 +02:00
Alexander Medvednikov e2364f6285 main.v: update help 2019-07-21 14:42:54 +02:00
Alexander Medvednikov 40c31f701f free arrays when they are out of scope
main.v: update help
2019-07-21 14:42:31 +02:00
vitalyster 3e005074a3 Windows Unicode I/O 2019-07-21 13:29:32 +02:00
Brian Callahan 876dee6435 OpenBSD needs pthread.h
Like Linux, OpenBSD also needs pthread.h (likely that all the BSDs do).
2019-07-20 11:48:06 +02:00
Delyan Angelov 38c58f9f1b compiler: fix #1193 . Flag -c_options is now named -cflags.
You can also pass -cflags '-Os -fno-inline-small-functions'
2019-07-18 19:45:31 +02:00
joe-conigliaro b3bdcfda42 Fix modules order 2019-07-18 19:25:46 +02:00
Delyan Angelov 1ef0f3b549 live reload: the reload_so function now uses too, instead of hard coding the v name (which some people do not have in their PATH or have as an alias) 2019-07-18 15:56:38 +02:00
Alexander Medvednikov c35adbea91 vfmt fixes 2019-07-17 21:00:39 +02:00
Alexander Medvednikov 7dc7502fe2 fix REPL and hot code reloading for users that don't have V in PATH 2019-07-17 19:23:47 +02:00
Delyan Angelov 5d0cb1437c Add support for VFLAGS environment variable, merged with cmd args.
Using VFLAGS, you can pass common options through it to the V compiler,
without having to manually specify them everytime when you type V ...
In addition, since environment variables are *inherited*, all subprocess
V compilers, which V launches (for example when compiling with -live),
will *also* use the same VFLAGS environment variable.

Example usage:
  export VFLAGS="-debug -show_c_cmd"
  v -live message.v

=> This will keep *both* of the generated C source files .message.c
   *AND* .message_shared_lib.c . It will also cause both V compile
   subprocesses to print their resulting C compiler backend lines.
   This is very useful when using GDB to debug problems.
2019-07-16 19:35:16 +02:00
Delyan Angelov 17580f3013 Support for passing different options to the C compiler backend.
Example: 'v -c_options=-Os' will pass -Os to the C compiler.
In effect the C compiler will optimize the generated binary for size.
2019-07-16 19:34:44 +02:00
Alexander Medvednikov 1748632144 do not create ~/.vlang directory 2019-07-16 17:44:25 +02:00
Alexander Medvednikov 31032d3a62 allow field 'type' 2019-07-16 13:01:39 +02:00
Alexander Medvednikov eb7aee5ae0 store temp C files in the same directory 2019-07-16 02:12:05 +02:00
Alexander Medvednikov cc06fe7ae6 os.dir(); fix vroot on Windows 2019-07-16 01:57:06 +02:00
Alexander Medvednikov 8902256592 V 0.1.15 2019-07-15 23:56:18 +02:00
Alexander Medvednikov edbcefb811 fix and simplify VROOT 2019-07-15 23:33:31 +02:00
Alexander Medvednikov 62e6e03492 -ldl is only required on Linux 2019-07-15 20:40:37 +02:00
Alexander Medvednikov 9b020fad53 fix OpenBSD build 2019-07-15 20:22:48 +02:00
Alexander Medvednikov 374781da1a OpenBSD, NetBSD, DragonFly support 2019-07-15 20:19:07 +02:00
Alexander Medvednikov 449fd372f9 *_nix.v support 2019-07-15 19:23:09 +02:00
Alexander Medvednikov b36a9f7e55 glfw always on top 2019-07-15 19:23:09 +02:00
Delyan Angelov 37aff9b107 hot reload: no -sanitize is needed anymore, -live is now enough on both Linux and MacOS X
* hot reload for GL programs: force the main executable (the shared library loader) to be build with -rdynamic flag, when -live is passed to v compiler.

* hot reload: optimize away a redundant load_so/0 call at the start of the reload_so thread.

* hot code reload for MacOSX requires -flat_namespace flag instead of -rdynamic (on linux).
2019-07-15 17:32:00 +02:00
Alexander Medvednikov 7c6f59afa6 FreeBSD support 2019-07-15 17:24:44 +02:00
Delyan Angelov 0556f5fd4e When compiling with -shared (a step in compiling with -live), store the C intermediary file in a different file than main (loader) file, so that debugging symbol lookup information is correct (the files are not replaced constantly with each other). 2019-07-15 12:30:03 +02:00
Alexander Medvednikov f7dbbf5810 re-write map.v and update the compiler 2019-07-14 22:08:17 +02:00
Nick Treleaven cec3ea5b4d Document `v -lib` and don't advertise `--help` long option
--help and --version are accepted, but these don't fit the `-option`
format of V's other options. To avoid confusion, don't mention them.
2019-07-13 14:54:31 +02:00
joe-conigliaro 9a957ccc18 module aliasing & file import scope 2019-07-12 07:37:54 +02:00
Alexander Medvednikov 56b7c9e35f for key, val in map syntax 2019-07-12 07:27:30 +02:00
Alexander Medvednikov 22b41c7873 V 0.1.14 2019-07-12 05:23:00 +02:00
hazohelet 560ba55572 enable consts with operators in scripts 2019-07-12 04:53:51 +02:00
Alexander Medvednikov f834644db4 make gg work on Windows; prebuild glad and cJSON; new ft module 2019-07-12 04:50:14 +02:00
Alexander Medvednikov 9efe305093 fix Linux build 2019-07-10 21:57:15 +02:00
Alexander Medvednikov 28843a12c7 cache string.hash() 2019-07-10 10:00:12 +02:00
Alexander Medvednikov e1ddac1590 utf8: remove unused UTF8_CHAR_LEN macro and add a simple utf8 test 2019-07-10 09:07:04 +02:00
Alexander Medvednikov c44d54fb4c V 0.1.13 2019-07-10 02:03:09 +02:00
Alexander Medvednikov 26ef99293d new enum syntax; update the compiler (`p.tok == .name`) 2019-07-10 02:02:38 +02:00
Henrixounez 26af513e1b repl: remove void line for unused and compile as repl 2019-07-09 20:55:37 +02:00
Delyan Angelov 932f6d1bef Fix hot code reloading on linux 2019-07-09 20:54:23 +02:00
Henrixounez 7b1be8a2bd CI: Add back erased commits and dont test hot code examples 2019-07-09 20:44:30 +02:00
Alexander Medvednikov 045d480c8c clean up the examples a bit 2019-07-07 22:09:08 +02:00
Alexander Medvednikov 7fed451226 inotify TODO 2019-07-07 22:04:41 +02:00
Alexander Medvednikov de8dc4cddb hot code reloading examples 2019-07-07 22:02:27 +02:00
joe-conigliaro 8a2d25247f submodules 2019-07-07 01:22:47 +02:00
aguspiza 36908fa304 fix for #1020 2019-07-07 01:20:56 +02:00