Skip to content

Commit d20459b

Browse files
committed
changes: 202405220249
1 parent 9e87de8 commit d20459b

File tree

5 files changed

+654
-1
lines changed

5 files changed

+654
-1
lines changed

c/cxxbuild/1.6.3-1.6.4/README.md

+356
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,356 @@
1+
# Comparing `tmp/cxxbuild-1.6.3.tar.gz` & `tmp/cxxbuild-1.6.4.tar.gz`
2+
3+
## filetype from file(1)
4+
5+
```diff
6+
@@ -1 +1 @@
7+
-gzip compressed data, was "cxxbuild-1.6.3.tar", last modified: Tue May 21 14:54:31 2024, max compression
8+
+gzip compressed data, was "cxxbuild-1.6.4.tar", last modified: Wed May 22 00:47:50 2024, max compression
9+
```
10+
11+
## Comparing `cxxbuild-1.6.3.tar` & `cxxbuild-1.6.4.tar`
12+
13+
### file list
14+
15+
```diff
16+
@@ -1,17 +1,17 @@
17+
-drwxr-sr-x 0 root (0) root (0) 0 2024-05-21 14:54:31.137412 cxxbuild-1.6.3/
18+
--rw-rw-r-- 0 root (0) root (0) 1065 2023-11-07 22:41:49.000000 cxxbuild-1.6.3/LICENSE
19+
--rw-r--r-- 0 root (0) root (0) 14991 2024-05-21 14:54:31.137412 cxxbuild-1.6.3/PKG-INFO
20+
--rw-r--r-- 0 root (0) root (0) 12930 2024-05-21 14:54:06.000000 cxxbuild-1.6.3/README.md
21+
-drwxr-sr-x 0 root (0) root (0) 0 2024-05-21 14:54:31.129412 cxxbuild-1.6.3/cxxbuild/
22+
--rw-r--r-- 0 root (0) root (0) 27 2023-12-31 14:16:19.000000 cxxbuild-1.6.3/cxxbuild/__init__.py
23+
--rw-r--r-- 0 root (0) root (0) 54411 2024-05-21 14:54:06.000000 cxxbuild-1.6.3/cxxbuild/cxxbuild.py
24+
-drwxr-sr-x 0 root (0) root (0) 0 2024-05-21 14:54:31.133412 cxxbuild-1.6.3/cxxbuild.egg-info/
25+
--rw-r--r-- 0 root (0) root (0) 14991 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/PKG-INFO
26+
--rw-r--r-- 0 root (0) root (0) 277 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/SOURCES.txt
27+
--rw-r--r-- 0 root (0) root (0) 1 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/dependency_links.txt
28+
--rw-r--r-- 0 root (0) root (0) 43 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/entry_points.txt
29+
--rw-r--r-- 0 root (0) root (0) 59 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/requires.txt
30+
--rw-r--r-- 0 root (0) root (0) 9 2024-05-21 14:54:31.000000 cxxbuild-1.6.3/cxxbuild.egg-info/top_level.txt
31+
--rw-rw-r-- 0 root (0) root (0) 923 2024-05-21 14:54:06.000000 cxxbuild-1.6.3/pyproject.toml
32+
--rw-r--r-- 0 root (0) root (0) 38 2024-05-21 14:54:31.137412 cxxbuild-1.6.3/setup.cfg
33+
--rw-rw-r-- 0 root (0) root (0) 227 2024-05-21 14:54:06.000000 cxxbuild-1.6.3/setup.py
34+
+drwxr-sr-x 0 root (0) root (0) 0 2024-05-22 00:47:50.019753 cxxbuild-1.6.4/
35+
+-rw-rw-r-- 0 root (0) root (0) 1065 2023-11-07 22:41:49.000000 cxxbuild-1.6.4/LICENSE
36+
+-rw-r--r-- 0 root (0) root (0) 15190 2024-05-22 00:47:50.019753 cxxbuild-1.6.4/PKG-INFO
37+
+-rw-r--r-- 0 root (0) root (0) 13129 2024-05-22 00:47:25.000000 cxxbuild-1.6.4/README.md
38+
+drwxr-sr-x 0 root (0) root (0) 0 2024-05-22 00:47:50.015753 cxxbuild-1.6.4/cxxbuild/
39+
+-rw-r--r-- 0 root (0) root (0) 27 2023-12-31 14:16:19.000000 cxxbuild-1.6.4/cxxbuild/__init__.py
40+
+-rw-r--r-- 0 root (0) root (0) 54882 2024-05-22 00:47:25.000000 cxxbuild-1.6.4/cxxbuild/cxxbuild.py
41+
+drwxr-sr-x 0 root (0) root (0) 0 2024-05-22 00:47:50.019753 cxxbuild-1.6.4/cxxbuild.egg-info/
42+
+-rw-r--r-- 0 root (0) root (0) 15190 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/PKG-INFO
43+
+-rw-r--r-- 0 root (0) root (0) 277 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/SOURCES.txt
44+
+-rw-r--r-- 0 root (0) root (0) 1 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/dependency_links.txt
45+
+-rw-r--r-- 0 root (0) root (0) 43 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/entry_points.txt
46+
+-rw-r--r-- 0 root (0) root (0) 59 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/requires.txt
47+
+-rw-r--r-- 0 root (0) root (0) 9 2024-05-22 00:47:50.000000 cxxbuild-1.6.4/cxxbuild.egg-info/top_level.txt
48+
+-rw-rw-r-- 0 root (0) root (0) 923 2024-05-22 00:47:25.000000 cxxbuild-1.6.4/pyproject.toml
49+
+-rw-r--r-- 0 root (0) root (0) 38 2024-05-22 00:47:50.019753 cxxbuild-1.6.4/setup.cfg
50+
+-rw-rw-r-- 0 root (0) root (0) 227 2024-05-22 00:47:25.000000 cxxbuild-1.6.4/setup.py
51+
```
52+
53+
### Comparing `cxxbuild-1.6.3/LICENSE` & `cxxbuild-1.6.4/LICENSE`
54+
55+
* *Files identical despite different names*
56+
57+
### Comparing `cxxbuild-1.6.3/PKG-INFO` & `cxxbuild-1.6.4/PKG-INFO`
58+
59+
* *Files 2% similar despite different names*
60+
61+
```diff
62+
@@ -1,10 +1,10 @@
63+
Metadata-Version: 2.1
64+
Name: cxxbuild
65+
-Version: 1.6.3
66+
+Version: 1.6.4
67+
Summary: CxxBuild is a python script to easily build C++ programs: just invoke 'cxxbuild' and it works!
68+
Author-email: Igor Machado Coelho <[email protected]>
69+
License: MIT License
70+
71+
Copyright (c) 2023 manydeps
72+
73+
Permission is hereby granted, free of charge, to any person obtaining a copy
74+
@@ -48,15 +48,15 @@
75+
76+
![C++11](https://img.shields.io/badge/std-c%2B%2B11-blue) ![C++14](https://img.shields.io/badge/std-c%2B%2B14-blue) ![C++17](https://img.shields.io/badge/std-c%2B%2B17-blue) ![C++20](https://img.shields.io/badge/std-c%2B%2B20-blue) ![C++23](https://img.shields.io/badge/std-c%2B%2B23-blue)
77+
78+
[![DOI](https://zenodo.org/badge/715821683.svg)](https://zenodo.org/doi/10.5281/zenodo.10447208)
79+
80+
_**cxxbuild** (or "cplusplusbuild") is a python script to easily generate C/C++ build files for cmake and bazel._
81+
82+
-- Version: `cxxbuild version=1.6.3`
83+
+- Version: `cxxbuild version=1.6.4`
84+
- Installation: `pip install cxxbuild` (or `pipx install cxxbuild` for newer distributions)
85+
86+
For basic introduction, read the post: [Using cxxbuild to easily build C++ project with tests and dependencies](https://igormcoelho.medium.com/using-cxxbuild-to-easily-build-c-project-with-tests-and-dependencies-a3726b453f75)
87+
88+
We know it is very hard to start a C++ project and learn basics of build systems such as CMake and Bazel, and package managers like conan and vcpkg... so just type "cxxbuild" and be happy!
89+
But you MUST follow the canonical organization below:
90+
91+
@@ -199,14 +199,17 @@
92+
- take system `-lm` dependency
93+
- C++ standard `c++17` is used
94+
- build system `cmake` is used
95+
96+
The `git` part could be any package manager, such as conan and vcpkg, although not implemented yet!
97+
The `git` can be specified for `cmake` or `bazel`, like `cmake+git` or `bazel+git`.
98+
99+
+The `local` can be specified for `cmake` or `bazel`, like `cmake+local` or `bazel+local`.
100+
+On `cmake` it represents a `find_package`, while on `bazel` it is a `local_repository` (to implement, yet).
101+
+
102+
It can also be `bcr`, for the Bazel Central Registry, or more specifically: `bazel+bcr` (not supported for `cmake+bcr`)
103+
104+
### Ongoing extensions for cxxdeps
105+
Some ongoing extensions will allow managing dev dependencies,
106+
such as build systems (cmake, bazel, etc) and C/C++ package managers (conan, etc), all automatically on `cxxdeps.txt` (or exclusively on `cxxdeps.dev.txt`):
107+
```
108+
cmake == * [ cmake ] pip dev [ ninja ]
109+
```
110+
111+
### Comparing `cxxbuild-1.6.3/README.md` & `cxxbuild-1.6.4/README.md`
112+
113+
* *Files 5% similar despite different names*
114+
115+
```diff
116+
@@ -4,15 +4,15 @@
117+
118+
![C++11](https://img.shields.io/badge/std-c%2B%2B11-blue) ![C++14](https://img.shields.io/badge/std-c%2B%2B14-blue) ![C++17](https://img.shields.io/badge/std-c%2B%2B17-blue) ![C++20](https://img.shields.io/badge/std-c%2B%2B20-blue) ![C++23](https://img.shields.io/badge/std-c%2B%2B23-blue)
119+
120+
[![DOI](https://zenodo.org/badge/715821683.svg)](https://zenodo.org/doi/10.5281/zenodo.10447208)
121+
122+
_**cxxbuild** (or "cplusplusbuild") is a python script to easily generate C/C++ build files for cmake and bazel._
123+
124+
-- Version: `cxxbuild version=1.6.3`
125+
+- Version: `cxxbuild version=1.6.4`
126+
- Installation: `pip install cxxbuild` (or `pipx install cxxbuild` for newer distributions)
127+
128+
For basic introduction, read the post: [Using cxxbuild to easily build C++ project with tests and dependencies](https://igormcoelho.medium.com/using-cxxbuild-to-easily-build-c-project-with-tests-and-dependencies-a3726b453f75)
129+
130+
We know it is very hard to start a C++ project and learn basics of build systems such as CMake and Bazel, and package managers like conan and vcpkg... so just type "cxxbuild" and be happy!
131+
But you MUST follow the canonical organization below:
132+
133+
@@ -155,14 +155,17 @@
134+
- take system `-lm` dependency
135+
- C++ standard `c++17` is used
136+
- build system `cmake` is used
137+
138+
The `git` part could be any package manager, such as conan and vcpkg, although not implemented yet!
139+
The `git` can be specified for `cmake` or `bazel`, like `cmake+git` or `bazel+git`.
140+
141+
+The `local` can be specified for `cmake` or `bazel`, like `cmake+local` or `bazel+local`.
142+
+On `cmake` it represents a `find_package`, while on `bazel` it is a `local_repository` (to implement, yet).
143+
+
144+
It can also be `bcr`, for the Bazel Central Registry, or more specifically: `bazel+bcr` (not supported for `cmake+bcr`)
145+
146+
### Ongoing extensions for cxxdeps
147+
Some ongoing extensions will allow managing dev dependencies,
148+
such as build systems (cmake, bazel, etc) and C/C++ package managers (conan, etc), all automatically on `cxxdeps.txt` (or exclusively on `cxxdeps.dev.txt`):
149+
```
150+
cmake == * [ cmake ] pip dev [ ninja ]
151+
```
152+
153+
### Comparing `cxxbuild-1.6.3/cxxbuild/cxxbuild.py` & `cxxbuild-1.6.4/cxxbuild/cxxbuild.py`
154+
155+
* *Files 0% similar despite different names*
156+
157+
```diff
158+
@@ -6,15 +6,15 @@
159+
import os
160+
import platform
161+
import sys
162+
import json
163+
import subprocess
164+
165+
def version():
166+
- v = "cxxbuild=1.6.3"
167+
+ v = "cxxbuild=1.6.4"
168+
return v
169+
170+
def usage():
171+
u=version()+"""
172+
Usage:
173+
cxxbuild [build] [ROOT_PATH]
174+
builds with cxxbuild, examples:
175+
@@ -992,14 +992,16 @@
176+
# add extra source file
177+
build_options_args.append("!extrasrc "+str(sys.argv[i + 1]))
178+
if (sys.argv[i] == "--tests"):
179+
build_options_args.append("!tests \""+str(sys.argv[i + 1])+"\"")
180+
if (sys.argv[i] == "--include"):
181+
# force --include to appear
182+
build_options_args.append("!include \""+str(sys.argv[i + 1])+"\"")
183+
+ if (sys.argv[i] == "--ignore"):
184+
+ build_options_args.append("!ignore "+str(sys.argv[i + 1]))
185+
if (sys.argv[i] == "--define"):
186+
# force --define to appear
187+
build_options_args.append("!define "+str(sys.argv[i + 1]))
188+
if (sys.argv[i] == "--cmake"):
189+
build_options_args.append("!build cmake")
190+
if (sys.argv[i] == "--bazel"):
191+
build_options_args.append("!build bazel")
192+
@@ -1041,14 +1043,17 @@
193+
#
194+
use_cmake=None
195+
use_bazel=None
196+
cppstd="17"
197+
INCLUDE_DIRS = []
198+
DEFINITIONS = []
199+
EXTRA_SOURCES = []
200+
+ IGNORE = []
201+
+ # ignore build/ folder by default
202+
+ IGNORE.append("build/")
203+
for op in build_options:
204+
# import shlex
205+
# oplist = shlex.split(op)
206+
oplist = op.split()
207+
print(op.split())
208+
if oplist[0] == '!version':
209+
MIN_CXXBUILD_VERSION=oplist[1]
210+
@@ -1060,14 +1065,16 @@
211+
print("Insufficient CXXBUILD version! Please upgrade!")
212+
print("Current version: "+current_version)
213+
print("Required version (cxxdeps): "+MIN_CXXBUILD_VERSION)
214+
print("Aborting...")
215+
exit(1)
216+
if oplist[0] == '!include':
217+
INCLUDE_DIRS.append(oplist[1].strip("\""))
218+
+ if oplist[0] == '!ignore':
219+
+ IGNORE.append(op[len(oplist[0]):].strip())
220+
if oplist[0] == '!define':
221+
DEFINITIONS.append(op[len(oplist[0]):].strip())
222+
if oplist[0] == '!extrasrc':
223+
EXTRA_SOURCES.append(op[len(oplist[0]):].strip())
224+
if oplist[0] == '!src':
225+
search_src = oplist[1].strip("\"")
226+
if oplist[0] == '!tests':
227+
@@ -1097,17 +1104,17 @@
228+
229+
# build system defaults to cmake
230+
if use_cmake is None:
231+
use_cmake = True
232+
use_bazel = False
233+
234+
#
235+
- return run_build(root_path, use_cmake, use_bazel, cppstd, search_src, search_tests, search_include, INCLUDE_DIRS, DEFINITIONS, EXTRA_SOURCES)
236+
+ return run_build(root_path, use_cmake, use_bazel, cppstd, search_src, search_tests, search_include, INCLUDE_DIRS, DEFINITIONS, EXTRA_SOURCES, IGNORE)
237+
238+
-def run_build(root_path, use_cmake, use_bazel, cppstd, search_src, search_tests, search_include, INCLUDE_DIRS, DEFINITIONS, EXTRA_SOURCES):
239+
+def run_build(root_path, use_cmake, use_bazel, cppstd, search_src, search_tests, search_include, INCLUDE_DIRS, DEFINITIONS, EXTRA_SOURCES, IGNORE):
240+
#
241+
print("begin build on root_path=",root_path)
242+
# find all source files,
243+
# find all files with an entry point,
244+
src_list = []
245+
src_main = {}
246+
# ENFORCING THIS PATH... MUST ADD MULTIPLE PATH OPTION!
247+
@@ -1205,20 +1212,24 @@
248+
root = root.removeprefix(root_path).removeprefix("/")
249+
#print("root: ", root)
250+
#print("subdirs: ", subdirs)
251+
#print("files: ", files)
252+
if "include" in subdirs:
253+
incdir = root+"/"+search_include
254+
incdir = incdir.removeprefix(root_path).removeprefix("/")
255+
- # ignore 'build' stuff
256+
- if incdir[0:6] == 'build/':
257+
- print("WARNING: 'build/' prefixed folder ignored: ", incdir)
258+
- pass
259+
- else:
260+
+ must_ignore=False
261+
+ for ign in IGNORE:
262+
+ # ignore 'build' stuff and others in IGNORE
263+
+ if incdir.startswith(ign):
264+
+ print("WARNING: '"+ign+"' prefixed folder ignored: ", incdir)
265+
+ must_ignore=True
266+
+ break
267+
+ if not must_ignore:
268+
INCLUDE_DIRS.append(incdir)
269+
+ # end-for
270+
# TODO: search in other places too... maybe inside src?
271+
# keep unique only!
272+
INCLUDE_DIRS = list(set(INCLUDE_DIRS))
273+
274+
print("INCLUDE_DIRS=",INCLUDE_DIRS)
275+
276+
if use_cmake == True:
277+
```
278+
279+
### Comparing `cxxbuild-1.6.3/cxxbuild.egg-info/PKG-INFO` & `cxxbuild-1.6.4/cxxbuild.egg-info/PKG-INFO`
280+
281+
* *Files 2% similar despite different names*
282+
283+
```diff
284+
@@ -1,10 +1,10 @@
285+
Metadata-Version: 2.1
286+
Name: cxxbuild
287+
-Version: 1.6.3
288+
+Version: 1.6.4
289+
Summary: CxxBuild is a python script to easily build C++ programs: just invoke 'cxxbuild' and it works!
290+
Author-email: Igor Machado Coelho <[email protected]>
291+
License: MIT License
292+
293+
Copyright (c) 2023 manydeps
294+
295+
Permission is hereby granted, free of charge, to any person obtaining a copy
296+
@@ -48,15 +48,15 @@
297+
298+
![C++11](https://img.shields.io/badge/std-c%2B%2B11-blue) ![C++14](https://img.shields.io/badge/std-c%2B%2B14-blue) ![C++17](https://img.shields.io/badge/std-c%2B%2B17-blue) ![C++20](https://img.shields.io/badge/std-c%2B%2B20-blue) ![C++23](https://img.shields.io/badge/std-c%2B%2B23-blue)
299+
300+
[![DOI](https://zenodo.org/badge/715821683.svg)](https://zenodo.org/doi/10.5281/zenodo.10447208)
301+
302+
_**cxxbuild** (or "cplusplusbuild") is a python script to easily generate C/C++ build files for cmake and bazel._
303+
304+
-- Version: `cxxbuild version=1.6.3`
305+
+- Version: `cxxbuild version=1.6.4`
306+
- Installation: `pip install cxxbuild` (or `pipx install cxxbuild` for newer distributions)
307+
308+
For basic introduction, read the post: [Using cxxbuild to easily build C++ project with tests and dependencies](https://igormcoelho.medium.com/using-cxxbuild-to-easily-build-c-project-with-tests-and-dependencies-a3726b453f75)
309+
310+
We know it is very hard to start a C++ project and learn basics of build systems such as CMake and Bazel, and package managers like conan and vcpkg... so just type "cxxbuild" and be happy!
311+
But you MUST follow the canonical organization below:
312+
313+
@@ -199,14 +199,17 @@
314+
- take system `-lm` dependency
315+
- C++ standard `c++17` is used
316+
- build system `cmake` is used
317+
318+
The `git` part could be any package manager, such as conan and vcpkg, although not implemented yet!
319+
The `git` can be specified for `cmake` or `bazel`, like `cmake+git` or `bazel+git`.
320+
321+
+The `local` can be specified for `cmake` or `bazel`, like `cmake+local` or `bazel+local`.
322+
+On `cmake` it represents a `find_package`, while on `bazel` it is a `local_repository` (to implement, yet).
323+
+
324+
It can also be `bcr`, for the Bazel Central Registry, or more specifically: `bazel+bcr` (not supported for `cmake+bcr`)
325+
326+
### Ongoing extensions for cxxdeps
327+
Some ongoing extensions will allow managing dev dependencies,
328+
such as build systems (cmake, bazel, etc) and C/C++ package managers (conan, etc), all automatically on `cxxdeps.txt` (or exclusively on `cxxdeps.dev.txt`):
329+
```
330+
cmake == * [ cmake ] pip dev [ ninja ]
331+
```
332+
333+
### Comparing `cxxbuild-1.6.3/pyproject.toml` & `cxxbuild-1.6.4/pyproject.toml`
334+
335+
* *Files 1% similar despite different names*
336+
337+
```diff
338+
@@ -3,15 +3,15 @@
339+
340+
[build-system]
341+
requires=["setuptools", "wheel"]
342+
build-backend="setuptools.build_meta"
343+
344+
[project]
345+
name="cxxbuild"
346+
-version="1.6.3"
347+
+version="1.6.4"
348+
description="CxxBuild is a python script to easily build C++ programs: just invoke 'cxxbuild' and it works!"
349+
readme="README.md"
350+
authors=[{ name="Igor Machado Coelho", email="[email protected]" }]
351+
license={ file="LICENSE" }
352+
classifiers=[
353+
"License :: OSI Approved :: MIT License",
354+
"Programming Language :: Python",
355+
```
356+

0 commit comments

Comments
 (0)