blob: 936a0b4999e7271086eb9cbf5e5a290c1249d43f [file] [log] [blame]
Dale Curtis9596cc02018-10-31 14:25:55 -07001Name: Netwide Assembler
2Short Name: nasm
3URL: https://www.nasm.us/
Dale Curtis8784bed2020-07-13 10:48:27 -07004Version: 2.15.03rc6 / f1cf95480d9df9e7854a4be6844f86ff854e03d2
5CPEPrefix: cpe:/a:nasm:netwide_assembler:2.15.03rc6
Dale Curtis9596cc02018-10-31 14:25:55 -07006License: 2-Clause BSD
Raphael Kubo da Costa63707e52018-12-05 12:18:29 +01007License File: LICENSE
Dale Curtis9596cc02018-10-31 14:25:55 -07008Security Critical: no
Dale Curtis81fc45a2020-07-01 12:22:26 -07009Source: https://github.com/netwide-assembler/nasm
Dale Curtis9596cc02018-10-31 14:25:55 -070010
Dale Curtis417709d2018-11-19 15:46:52 -080011--[ DESCRIPTION ] ------------------
Dale Curtis9596cc02018-10-31 14:25:55 -070012This contains the source to NASM, the assembler used for parts of Chromium.
13
Dale Curtis9596cc02018-10-31 14:25:55 -070014
Dale Curtis417709d2018-11-19 15:46:52 -080015--[ PATCHES ] ------------------
16* See README.patches for the full listing.
17
18If you make any changes to nasm which are not in upstream, please update the
19README.patches file with the following command:
20
21 ./find_patches.py > README.patches
22
23Note: This script only works if you have added upstream as a remote per the
24directions in updating below.
25
26
27--[ UPDATING ] ------------------
Dale Curtis9596cc02018-10-31 14:25:55 -070028To update, have clang in your system path (from //third_party/llvm-
29build/Release+Asserts/bin) then do the following:
30
Dale Curtis81fc45a2020-07-01 12:22:26 -070031 git remote add upstream https://github.com/netwide-assembler/nasm.git
Dale Curtis3dacc5e2018-11-01 10:48:41 -070032 git fetch upstream
33 git merge upstream/master
Dale Curtis0e9e5be2018-11-01 17:34:21 -070034
35 # Maybe use git mergetool to resolve any conflicts with local patches.
36
37 # ***DO NOT USE*** git cl upload for this part or you will spam every author
38 # who committed something upstream with a Gerrit issue... :O You must also
39 # have the correct Gerrit permissions from one of the OWNERS to do this.
40 git push origin master
41
42 # You can safely use git cl upload for all of your own modifications past this
43 # point; I.e., once you have pushed all the commits from the git merge.
44
Dale Curtis352a7a12020-07-10 11:34:02 -070045 CC=clang CXX=clang++ CFLAGS="-std=c11 -Werror" ./autogen.sh
46 CC=clang CXX=clang++ CFLAGS="-std=c11 -Werror" ./configure
Dale Curtis3dacc5e2018-11-01 10:48:41 -070047 make perlreq
48 ./generate_nasm_sources.py
49 git add <any new .c/.h files which show up>
Dale Curtis9596cc02018-10-31 14:25:55 -070050
Dale Curtis03afeee2020-07-14 16:24:11 -070051 # Copy config/config.h to config-(mac|linux).h
Dale Curtis3dacc5e2018-11-01 10:48:41 -070052 # Revert config/config.h to the checked in version
Elly Fong-Jones0873b2b2022-11-02 19:49:51 +000053 ./generate_nasm_configs.py
Dale Curtis3dacc5e2018-11-01 10:48:41 -070054
55 git commit -a
56
Dale Curtis417709d2018-11-19 15:46:52 -080057
58--[ CONFIG_H_ ] ------------------
Dale Curtis3dacc5e2018-11-01 10:48:41 -070059In the event any new config.h flags are added, you may need to regenerate the
Dale Curtis405ddf72020-07-01 15:48:40 -070060config.h for Linux and Mac -- maybe for Windows if they haven't fixed msvc.h.
Dale Curtis3dacc5e2018-11-01 10:48:41 -070061
Dale Curtise2938142020-06-29 15:29:48 -070062To run the script on macOS you can follow the same instructions as above after
63setting up autoconf; with Homebrew: brew install autoconf automake libtool
64
65You will likely need to set SDKROOT to point to the macOS SDK if you haven't
66setup Xcode in the past. If you have the hermetic macOS toolchain in your
67checkout just add:
68
69export SDKROOT=$path_to_chrome_src/build/mac_files/xcode_binaries/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk
70
71You can stop after configure. Then just follow the copy instructions above.
Dale Curtis3dacc5e2018-11-01 10:48:41 -070072
Dale Curtis417709d2018-11-19 15:46:52 -080073
74--[ TODOS ] ------------------
Dale Curtis03afeee2020-07-14 16:24:11 -070075None at this time.
76