Giter Site home page Giter Site logo

psmedley / node-os2 Goto Github PK

View Code? Open in Web Editor NEW
1.0 1.0 0.0 95.71 MB

License: Other

Makefile 0.31% Shell 0.18% JavaScript 58.80% R 0.05% HTML 1.16% C++ 21.28% Python 14.21% C 3.19% DTrace 0.27% Roff 0.11% Batchfile 0.26% Emacs Lisp 0.10% Perl 0.08%

node-os2's People

Contributors

psmedley avatar

Stargazers

 avatar

Watchers

 avatar

node-os2's Issues

Output file not always produced

Chromium runs some scripts which produce no output. On linux, we get a 0 byte file, on OS/2 we get no file at all which causes problems.

Use system ssl / crypto

If possible, we want to avoid compiling openssl and use the rpm packages. Meanwhile look at teaching gyp how to build os/2 binaries for openssl

gyp needs to be fixed to use response files

Currently gyp generates make files which fail on OS/2 due to the command line exceeding 32k characters.

We need to adapt make.py to generate response files.

Steven suggests:
`I suspect we may want to tweak gyp. At the moment I am little more than
buzzword compliant in gpy so you may need to ignore me.

We have

tools\gyp\pylib\gyp\generator\make.py:139
LINK_COMMANDS_LINUX = """
quiet_cmd_alink = AR($(TOOLSET)) $@
cmd_alink = rm -f $@ && $(AR.$(TOOLSET)) crs $@ $(filter %.o,$^)

which appears to be what is generating the long-ish command lines.

This can be rewritten with make's file function to use response files.
See 8.6 The 'file' Function in make.info

The example provided is:

program: $(OBJECTS)
$(file >$@.in,$^)
$(CMD) $(CMDFLAGS) @[email protected]
@rm [email protected]

which does no filtering and is doing rm rather than ar and is multi-line.
Assuming I have the syntax right, something like

rm -f $@ && $(file >[email protected],$(filter %.o,$^)) ; $(AR.$(TOOLSET)) crs $@
@[email protected]

should work.

filter is documented in 8.2 Functions for String Substitution and Analysis

ar does response files, so given:

[d:\tmp]cat tmp.rsp
foo

Running results in the expected

[d:\tmp]ar crs a.a @tmp.rsp |& less
D:\USR\BIN\ar.exe: foo: No such file or directory

There actually two make.py's so both may need to be tweaked.

If the above works, it might be better to add our own LINK_COMMANDS_OS2
avoid conflicts going forward.

I may scan the gpy repo later to see if newer version support response
files better.
`

_os.cpus() returns undefined

This breaks qtwebengine build:

Simple test:
`
// Node.js program to demonstrate the
// os.cpus() method

// Allocating os module
const os = require('os');

// Printing os.cpus() values
console.log(os.cpus());`

returns 'undefined'

Hacked around this (for now) in qtwebengine with psmedley/qt6-webengine-os2@174e968

gyp needs work to handle drive letters

current workaround is to edit out/makefile to replace any drive letters pointing to the build directory with /

ie replace u:/node10 with /node10

This avoids errors like:
../deps/v8/src/base/bits.cc:121:1: fatal error: opening dependency file U:/dev/node-v10.19.0/out/Release/.deps/U:/dev/node-v10.19.0/out/Release/obj.host/v8_libbase/deps/v8/src/base/bits.o.d.raw: No such file or directory

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.