You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+53Lines changed: 53 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -145,3 +145,56 @@ auth_jwt_validate_email off;
145
145
## Contributing
146
146
147
147
If you'd like to contribute to this repository, please first initiate the Git hooks by running `./.bin/init` (note the `.` before `bin`) -- this will ensure that tests are run before you push your changes.
148
+
149
+
### Environment Set-up for Visual Studio Code
150
+
151
+
1. Install the C/C++ extension from Microsoft.
152
+
2. Add a C/C++ config file at `.vscode/c_cpp_properties.json` with the following (or similar) content:
153
+
154
+
```json
155
+
{
156
+
"configurations": [
157
+
{
158
+
"name": "Linux",
159
+
"includePath": [
160
+
"${workspaceFolder}/**",
161
+
"~/Projects/third-party/nginx/objs/**",
162
+
"~/Projects/third-party/nginx/src/**",
163
+
"~/Projects/third-party/libjwt/include/**",
164
+
"~/Projects/third-party/jansson/src/**"
165
+
],
166
+
"defines": [],
167
+
"compilerPath": "/usr/bin/clang",
168
+
"cStandard": "c17",
169
+
"cppStandard": "c++14",
170
+
"intelliSenseMode": "linux-clang-x64"
171
+
}
172
+
],
173
+
"version": 4
174
+
}
175
+
```
176
+
177
+
Note the `includePath` additions above -- please update them as appropriate. Next we need to pull these sources.
178
+
179
+
#### Building NGINX
180
+
181
+
1. Download the NGINX release matching the version you're targeting.
182
+
2. Extract the NGINX archive to wherever you'd like.
183
+
3. Update the `includePath` entires shown above to match the ___location you chose.
184
+
4. Enter the directory where you extracted NGINX and run: `./configure --with-compat`
185
+
186
+
### Cloning libjwt
187
+
188
+
1. Clone this repository as follows (replace `<target_dir>`): `git clone [email protected]:benmcollins/libjwt.git <target_dir>
189
+
2. Enter the directory and switch to the latest tag: `git checkout $(git tag | sort -Vr | head -n 1)`
190
+
3. Update the `includePath` entires shown above to match the ___location you chose.
191
+
192
+
### Cloning lobjansson
193
+
194
+
1. Clone this repository as follows (replace `<target_dir>`): `git clone [email protected]:akheron/jansson.git <target_dir>
195
+
2. Enter the directory and switch to the latest tag: `git checkout $(git tag | sort -Vr | head -n 1)`
196
+
3. Update the `includePath` entires shown above to match the ___location you chose.
197
+
198
+
### Verify Compliation
199
+
200
+
Once you save your changes to `.vscode/c_cpp_properties.json`, you should see that warnings and errors in the Problems panel go away, at least temprorarily. Hopfeully they don't come back, but if they do, make sure your include paths are set correctly.
0 commit comments