1
0
mirror of https://github.com/vlang/v.git synced 2023-08-10 21:13:21 +03:00

compiler: remove module_path()

This commit is contained in:
Alexander Medvednikov 2019-08-23 03:10:37 +03:00
parent e39cb41d6b
commit 8f1bf6033e
2 changed files with 15 additions and 17 deletions

View File

@ -2,11 +2,12 @@
*XX Aug 2019*
- New `mysql` module.
- Custom json field names: `struct User { last_name string [json:lastName] }`.
- Better error format that is supported by all major editors (go to error).
- Raw json fields via the `[raw]` attribute.
- `import const` was removed from the language.
- All C code was removed from the `freetype` module.
- `[typedef] attribute for imported C struct typedefs.
- `[typedef]` attribute for imported C struct typedefs.
- Support of Objective C interfaces (primarily for using Cocoa).
- REPL: clear command and custom functions.
- Syntax bug fixed: `foo[0] += 10` is now possible.
@ -19,6 +20,7 @@
## V 0.1.18
*16 Aug 2019*
@ -145,7 +147,7 @@
- maps fixed
## 0.1.9 - 0.1.10
## V 0.1.9 - 0.1.10
*29 Jun 2019*
- Windows support via MinGW-w64. Pre-built Windows binary.
- File structure has been simplified: all vlib modules were moved to the vlib/ directory,
@ -153,12 +155,12 @@
- One single archive with pre-built binaries for all operating systems.
- `mut var := val` was fixed (previously `mut var = val` was allowed as well).
## 0.1.8
## V 0.1.8
*28 Jun 2019*
- Single file programs without `fn main` now work as expected.
- REPL has been fixed: it now supports imports, consts, function definitions, etc.
## 0.1.7
## V 0.1.7
*27 Jun 2019*
- All C code in the compiler and vlib has been replaced with V.
- `#` syntax for embedding C code has been removed.

View File

@ -24,13 +24,9 @@ enum BuildMode {
build //TODO a better name would be smth like `.build_module` I think
}
fn modules_path() string {
return os.home_dir() + '/.vmodules/'
}
const (
SupportedPlatforms = ['windows', 'mac', 'linux', 'freebsd', 'openbsd', 'netbsd', 'dragonfly', 'msvc']
ModPath = modules_path()
ModPath = os.home_dir() + '/.vmodules/'
)
enum OS {
@ -243,11 +239,11 @@ fn (v mut V) compile() {
if v.pref.is_debug {
cgen.genln('#define VDEBUG (1) ')
}
cgen.genln(CommonCHeaders)
v.generate_hotcode_reloading_declarations()
imports_json := v.table.imports.contains('json')
// TODO remove global UI hack
if v.os == .mac && ((v.pref.build_mode == .embed_vlib && v.table.imports.contains('ui')) ||
@ -310,11 +306,11 @@ fn (v mut V) compile() {
}
dd := d.str()
cgen.lines.set(defs_pos, dd)// TODO `def.str()` doesn't compile
v.generate_main()
v.generate_hotcode_reloading_code()
cgen.save()
if v.pref.is_verbose {
v.log('flags=')
@ -325,7 +321,7 @@ fn (v mut V) compile() {
fn (v mut V) generate_main() {
mut cgen := v.cgen
// if v.build_mode in [.default, .embed_vlib] {
if v.pref.build_mode == .default_mode || v.pref.build_mode == .embed_vlib {
mut consts_init_body := cgen.consts_init.join_lines()
@ -548,11 +544,11 @@ fn (v mut V) cc() {
else {
a << '-g'
}
for f in v.generate_hotcode_reloading_compiler_flags() {
a << f
}
mut libs := ''// builtin.o os.o http.o etc
if v.pref.build_mode == .build {
a << '-c'