Skip to content

MSVC compatibility #16

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 53 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
53 commits
Select commit Hold shift + click to select a range
4298c1a
MSVC compatibility
c-smile Oct 12, 2020
a953bfc
README.md added
c-smile Oct 12, 2020
2ead907
JS_STRICT_NAN_BOXING
c-smile Oct 12, 2020
a37183d
fixes issue in var [a,b,c,d] = ... destructuring assignment
c-smile Oct 21, 2020
3b661bc
Update .gitignore
c-smile Oct 27, 2020
a0a4315
gitignore
c-smile Oct 27, 2020
a60f3b0
gitignore
c-smile Oct 27, 2020
43198ce
JSX implementation
c-smile Oct 27, 2020
4b6d73f
Update README.md
c-smile Oct 27, 2020
b428495
Update README.md
c-smile Oct 27, 2020
b7352f1
Update README.md
c-smile Oct 28, 2020
4663592
Typos
Oct 28, 2020
e682f63
Merge pull request #1 from 4silvertooth/patch-1
c-smile Oct 28, 2020
95e55eb
Fix of Infinity handling
c-smile Nov 2, 2020
f873101
+ named parameters call
c-smile Nov 8, 2020
3e2984f
JSX: support of components
c-smile Nov 8, 2020
810b6f0
+ JS_Eval2 function is JS_Eval with line_no parameters
c-smile Nov 8, 2020
cd64917
reverted "call by object" feature due to wild "automatic semicolon in…
c-smile Nov 9, 2020
5193c90
Update to QuickJS 2020-11-08
c-smile Jan 13, 2021
4e9316d
Support native module in windows
Jan 21, 2021
ee340d5
JSX line number reporting fix
c-smile Jan 21, 2021
d31b4df
Update to support multi-platform native module
Jan 22, 2021
81b154b
Merge https://github.com/c-smile/quickjspp into master
Jan 22, 2021
4a6b8e6
Sync with master
Jan 22, 2021
481785e
Sync with master
Jan 22, 2021
70956b9
Merge pull request #2 from Sc-Softs/master
c-smile Jan 23, 2021
1027035
Adds __DIR__ and __FILE__ constants that resolve to folder and path n…
c-smile Feb 23, 2021
228a039
+ Persistent Storage module.
c-smile Mar 2, 2021
7464a56
Update README.md
c-smile Mar 2, 2021
01c5a4f
Update architecture.md
c-smile Mar 2, 2021
4ee9cdc
Update architecture.md
c-smile Mar 2, 2021
0820493
Update Storage.md
c-smile Mar 2, 2021
fe8d555
Update Storage.md
c-smile Mar 2, 2021
b5e802a
Update architecture.md
c-smile Mar 2, 2021
cf9901f
JSX fixes + JS Debugger hooks (as used in Sciter.JS Inspector)
c-smile Mar 2, 2021
35f5a29
Merge branch 'master' of https://github.com/c-smile/quickjspp
c-smile Mar 2, 2021
e5d2b16
Sync with QuickJS v. 2021-03-27
c-smile Apr 25, 2021
d1ea93e
Persistence fixes.
c-smile Jul 13, 2021
25f545f
[persistence] Fix of AV when storage was not closed explicitly.
c-smile Jul 19, 2021
573d8b6
Update README.md
c-smile Aug 1, 2021
2488030
MSVC compatibility / x64
c-smile Aug 1, 2021
c8f45cb
Merge branch 'master' of https://github.com/c-smile/quickjspp
c-smile Aug 1, 2021
121dca5
GCC compatibility.
c-smile Aug 1, 2021
2af70e4
fix: compile error on Windows
Sep 18, 2021
4c9988f
fix: output exe to platform directory
Sep 18, 2021
2902f49
Merge pull request #4 from c0i/dev
c-smile Sep 19, 2021
655c88b
fix: linux compile
Sep 21, 2021
a2ce903
Merge pull request #5 from c0i/fix_linux_compile
c-smile Feb 23, 2022
29ee70e
Limit passic compiler specific flags when that compiler is used
iongion Mar 17, 2024
2519e1a
Merge pull request #6 from iongion/fix-linux-compilation
c-smile Mar 17, 2024
4be286c
Allow the use of native modules when using MinGW.
DenisBelmondo Jun 18, 2024
0575c08
Add platform-specific native module suffixes.
DenisBelmondo Jun 18, 2024
aef8e4e
Merge pull request #7 from DenisBelmondo/allow-dl-on-mingw
c-smile Jun 18, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
335 changes: 335 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,335 @@
## Ignore Visual Studio temporary files, build results, and
## files generated by popular Visual Studio add-ons.
##
## Get latest from https://github.com/github/gitignore/blob/master/VisualStudio.gitignore

# Premake files
.bin/
.build/

# User-specific files
*.suo
*.user
*.userosscache
*.sln.docstates

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs

# Build results
[Dd]ebug/
[Dd]ebugPublic/
[Rr]elease/
[Rr]eleases/
x64/
x86/
bld/
[Bb]in/
[Oo]bj/
[Ll]og/

# Visual Studio 2015/2017 cache/options directory
.vs/
# Uncomment if you have tasks that create the project's static files in wwwroot
#wwwroot/

# Visual Studio 2017 auto generated files
Generated\ Files/

# MSTest test Results
[Tt]est[Rr]esult*/
[Bb]uild[Ll]og.*

# NUNIT
*.VisualState.xml
TestResult.xml

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
dlldata.c

# Benchmark Results
BenchmarkDotNet.Artifacts/

# .NET Core
project.lock.json
project.fragment.lock.json
artifacts/
**/Properties/launchSettings.json

# StyleCop
StyleCopReport.xml

# Files built by Visual Studio
*_i.c
*_p.c
*_i.h
*.ilk
*.meta
*.obj
*.iobj
*.pch
*.pdb
*.ipdb
*.pgc
*.pgd
*.rsp
*.sbr
*.tlb
*.tli
*.tlh
*.tmp
*.tmp_proj
*.log
*.vspscc
*.vssscc
.builds
*.pidb
*.svclog
*.scc

# Chutzpah Test files
_Chutzpah*

# Visual C++ cache files
ipch/
*.aps
*.ncb
*.opendb
*.opensdf
*.sdf
*.cachefile
*.VC.db
*.VC.VC.opendb

# Visual Studio profiler
*.psess
*.vsp
*.vspx
*.sap

# Visual Studio Trace Files
*.e2e

# TFS 2012 Local Workspace
$tf/

# Guidance Automation Toolkit
*.gpState

# ReSharper is a .NET coding add-in
_ReSharper*/
*.[Rr]e[Ss]harper
*.DotSettings.user

# JustCode is a .NET coding add-in
.JustCode

# TeamCity is a build add-in
_TeamCity*

# DotCover is a Code Coverage Tool
*.dotCover

# AxoCover is a Code Coverage Tool
.axoCover/*
!.axoCover/settings.json

# Visual Studio code coverage results
*.coverage
*.coveragexml

# NCrunch
_NCrunch_*
.*crunch*.local.xml
nCrunchTemp_*

# MightyMoose
*.mm.*
AutoTest.Net/

# Web workbench (sass)
.sass-cache/

# Installshield output folder
[Ee]xpress/

# DocProject is a documentation generator add-in
DocProject/buildhelp/
DocProject/Help/*.HxT
DocProject/Help/*.HxC
DocProject/Help/*.hhc
DocProject/Help/*.hhk
DocProject/Help/*.hhp
DocProject/Help/Html2
DocProject/Help/html

# Click-Once directory
publish/

# Publish Web Output
*.[Pp]ublish.xml
*.azurePubxml
# Note: Comment the next line if you want to checkin your web deploy settings,
# but database connection strings (with potential passwords) will be unencrypted
*.pubxml
*.publishproj

# Microsoft Azure Web App publish settings. Comment the next line if you want to
# checkin your Azure Web App publish settings, but sensitive information contained
# in these scripts will be unencrypted
PublishScripts/

# NuGet Packages
*.nupkg
# The packages folder can be ignored because of Package Restore
**/[Pp]ackages/*
# except build/, which is used as an MSBuild target.
!**/[Pp]ackages/build/
# Uncomment if necessary however generally it will be regenerated when needed
#!**/[Pp]ackages/repositories.config
# NuGet v3's project.json files produces more ignorable files
*.nuget.props
*.nuget.targets

# Microsoft Azure Build Output
csx/
*.build.csdef

# Microsoft Azure Emulator
ecf/
rcf/

# Windows Store app package directories and files
AppPackages/
BundleArtifacts/
Package.StoreAssociation.xml
_pkginfo.txt
*.appx

# Visual Studio cache files
# files ending in .cache can be ignored
*.[Cc]ache
# but keep track of directories ending in .cache
!*.[Cc]ache/

# Others
ClientBin/
~$*
*~
*.dbmdl
*.dbproj.schemaview
*.jfm
*.pfx
*.publishsettings
orleans.codegen.cs

# Including strong name files can present a security risk
# (https://github.com/github/gitignore/pull/2483#issue-259490424)
#*.snk

# Since there are multiple workflows, uncomment next line to ignore bower_components
# (https://github.com/github/gitignore/pull/1529#issuecomment-104372622)
#bower_components/

# RIA/Silverlight projects
Generated_Code/

# Backup & report files from converting an old project file
# to a newer Visual Studio version. Backup files are not needed,
# because we have git ;-)
_UpgradeReport_Files/
Backup*/
UpgradeLog*.XML
UpgradeLog*.htm
ServiceFabricBackup/
*.rptproj.bak

# SQL Server files
*.mdf
*.ldf
*.ndf

# Business Intelligence projects
*.rdl.data
*.bim.layout
*.bim_*.settings
*.rptproj.rsuser

# Microsoft Fakes
FakesAssemblies/

# GhostDoc plugin setting file
*.GhostDoc.xml

# Node.js Tools for Visual Studio
.ntvs_analysis.dat
node_modules/

# Visual Studio 6 build log
*.plg

# Visual Studio 6 workspace options file
*.opt

# Visual Studio 6 auto-generated workspace file (contains which files were open etc.)
*.vbw

# Visual Studio LightSwitch build output
**/*.HTMLClient/GeneratedArtifacts
**/*.DesktopClient/GeneratedArtifacts
**/*.DesktopClient/ModelManifest.xml
**/*.Server/GeneratedArtifacts
**/*.Server/ModelManifest.xml
_Pvt_Extensions

# Paket dependency manager
.paket/paket.exe
paket-files/

# FAKE - F# Make
.fake/

# JetBrains Rider
.idea/
*.sln.iml

# CodeRush
.cr/

# Python Tools for Visual Studio (PTVS)
__pycache__/
*.pyc

# Cake - Uncomment if you are using it
# tools/**
# !tools/packages.config

# Tabs Studio
*.tss

# Telerik's JustMock configuration file
*.jmconfig

# BizTalk build output
*.btp.cs
*.btm.cs
*.odx.cs
*.xsd.cs

# OpenCover UI analysis results
OpenCover/

# Azure Stream Analytics local run output
ASALocalRun/

# MSBuild Binary and Structured Log
*.binlog

# NVidia Nsight GPU debugger configuration file
*.nvuser

# MFractors (Xamarin productivity tool) working folder
.mfractor/

14 changes: 14 additions & 0 deletions Changelog
Original file line number Diff line number Diff line change
@@ -1,3 +1,17 @@
2021-03-27:

- faster Array.prototype.push and Array.prototype.unshift
- added JS_UpdateStackTop()
- fixed Windows console
- misc bug fixes

2020-11-08:

- improved function parameter initializers
- added std.setenv(), std.unsetenv() and std.getenviron()
- added JS_EvalThis()
- misc bug fixes

2020-09-06:

- added logical assignment operators
Expand Down
22 changes: 22 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
QuickJS Javascript Engine

Copyright (c) 2017-2021 Fabrice Bellard
Copyright (c) 2017-2021 Charlie Gordon

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
8 changes: 6 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
#
# QuickJS Javascript Engine
#
# Copyright (c) 2017-2020 Fabrice Bellard
# Copyright (c) 2017-2020 Charlie Gordon
# Copyright (c) 2017-2021 Fabrice Bellard
# Copyright (c) 2017-2021 Charlie Gordon
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
Expand Down Expand Up @@ -53,7 +53,11 @@ CONFIG_BIGNUM=y
OBJDIR=.obj

ifdef CONFIG_WIN32
ifdef CONFIG_M32
CROSS_PREFIX=i686-w64-mingw32-
else
CROSS_PREFIX=x86_64-w64-mingw32-
endif
EXE=.exe
else
CROSS_PREFIX=
Expand Down
Loading