Skip to content
Snippets Groups Projects
Commit 2de14b67 authored by Andre Maroneze's avatar Andre Maroneze
Browse files

Merge branch 'feature/ivette/distrib' into 'master'

[ivette] new distribution scripts

See merge request frama-c/frama-c!3656
parents 779c765e e95ae674
No related branches found
No related tags found
No related merge requests found
......@@ -343,7 +343,7 @@ DISTRIB_TESTS=$(shell find \
-o -path 'tests/crowbar/*' -type d \! -name input -prune -false \
-o -type f \! -name "*\.log" \! -name "*\.o" \
\! -name '*~' \! -name "*\.cm*" \! -name "*.sav" \
-perm /u+w | sed -e 's/ /@/g')
-perm -u+w | sed -e 's/ /@/g')
# files that are needed to compile API documentation of external plugins
DOC_GEN_FILES:=$(addprefix doc/code/,\
......@@ -2100,7 +2100,6 @@ uninstall::
HEADER_SPEC := $(DEFAULT_HEADER_SPEC)
# The list can be extended by external plugins using PLUGIN_HEADER_SPEC variable
HEADER_SPEC += $(PLUGIN_HEADER_SPEC_LIST)
HEADER_SPEC += ivette/./headers/header_spec.txt
# Default list of header specification files can be overloaded.
HEADER_SPEC_FILE?=$(HEADER_SPEC)
......@@ -2482,10 +2481,10 @@ DISTRIB_FILES += $(wildcard $(PLUGIN_DISTRIBUTED_LIST) \
DISTRIB_FILES:=$(filter-out $(GENERATED) $(PLUGIN_GENERATED_LIST),\
$(DISTRIB_FILES))
sinclude ivette/Makefile.distrib
DISTRIB_TESTS += $(wildcard $(PLUGIN_DIST_TESTS_LIST))
sinclude ivette/Makefile.distrib
sinclude ivette/Makefile.plugins
SPECIFIED_OPEN_SOURCE:=$(OPEN_SOURCE)
OPEN_SOURCE ?= no
......
......@@ -14,5 +14,6 @@ yarn-error.log
/doc/html
/src/renderer/loader.ts
/src/dome/doc/guides/icons.md
/Makefile.plugins
# --------------------------------------------------------------------------
......@@ -83,37 +83,10 @@ $(LOADER): $(PACKAGES) ./configure.js ./Makefile
# --- Frama-C Source Distrib
# --------------------------------------------------------------------------
.PHONY: update-distrib-files update-distrib-plugins
SRC_DISTRIB=Makefile.distrib
SRC_HEADERS=headers/header_spec.txt
.PHONY: update-distrib-files
update-distrib-files:
@echo "Generating $(SRC_DISTRIB)"
@rm -f $(SRC_DISTRIB)
@rm -f $(SRC_HEADERS)
@for f in `git ls-files .` ;\
do \
echo "DISTRIB_FILES += ivette/$$f" >> $(SRC_DISTRIB) ;\
headers/register.sh "$$f" >> $(SRC_HEADERS) ; \
done
@chmod a-w $(SRC_DISTRIB)
@chmod a-w $(SRC_HEADERS)
update-distrib-plugins: update-distrib-files
@chmod a+w $(SRC_DISTRIB)
@chmod a+w $(SRC_HEADERS)
@for repo in `find . -type d -name ".git"` ;\
do \
echo "Distributing $$repo" ;\
for f in `git -C $$repo ls-files .` ;\
do \
echo "DISTRIB_FILES += ivette/$$f" >> $(SRC_DISTRIB) ;\
headers/register.sh "$$f" >> $(SRC_HEADERS) ; \
done \
done
@chmod a-w $(SRC_DISTRIB)
@chmod a-w $(SRC_HEADERS)
./distrib.sh
# --------------------------------------------------------------------------
# --- Frama-C API
......
HEADER_SPEC += ivette/./headers/header_spec.txt
DISTRIB_FILES += ivette/.babelrc
DISTRIB_FILES += ivette/.dome-pkg-app.lock
DISTRIB_FILES += ivette/.dome-pkg-dev.lock
......@@ -7,15 +8,13 @@ DISTRIB_FILES += ivette/.gitignore
DISTRIB_FILES += ivette/CONTRIBUTING.md
DISTRIB_FILES += ivette/INSTALL.md
DISTRIB_FILES += ivette/Makefile
DISTRIB_FILES += ivette/Makefile.distrib
DISTRIB_FILES += ivette/README.md
DISTRIB_FILES += ivette/configure.js
DISTRIB_FILES += ivette/distrib.sh
DISTRIB_FILES += ivette/doc/pandoc/href.lua
DISTRIB_FILES += ivette/doc/pandoc/index.json
DISTRIB_FILES += ivette/doc/pandoc/template.html
DISTRIB_FILES += ivette/electron-webpack.json
DISTRIB_FILES += ivette/headers/header_spec.txt
DISTRIB_FILES += ivette/headers/register.sh
DISTRIB_FILES += ivette/package.json
DISTRIB_FILES += ivette/src/dome/.gitignore
DISTRIB_FILES += ivette/src/dome/CONTRIBUTING.md
......
#!/bin/sh -e
# --------------------------------------------------------------------------
# --- Generate Files for Ivette Distribution
# --------------------------------------------------------------------------
Distribute() {
repo=$1
Distrib=$repo/Makefile.distrib
Headers=$repo/headers/header_spec.txt
rm -f $Distrib
rm -f $Headers
mkdir -p $1/headers
if [ "$repo" == "." ]
then
src=ivette
else
src=ivette/$repo
fi
echo "Distributing $src"
echo "HEADER_SPEC += $src/./headers/header_spec.txt" >> $Distrib
for f in $(git -C $repo ls-files .)
do
case $f in
Makefile.distrib | headers/* )
;;
*)
echo "DISTRIB_FILES += $src/$f" >> $Distrib
case $f in
*.sh | *.json | */dome/doc/* | configure.js | .* | webpack*.js )
echo "$f: .ignore" >> $Headers
;;
*Make* | *.js* | *.ts* | *.ml*)
echo "$f: CEA_LGPL" >> $Headers
;;
*)
echo "$f: .ignore" >> $Headers
;;
esac
esac
done
chmod a-w $Distrib
chmod a-w $Headers
if [ "$repo" != "." ]
then
echo "include ivette/$Distrib" >> Makefile.plugins
fi
}
## Distribute Core Ivette Files
Distribute .
## Distribute Ivette Plugins Files
rm -f Makefile.plugins
for rgit in $(find src -type d -name ".git")
do
Distribute $(dirname $rgit)
done
if [ -f Makefile.plugins ]
then
chmod a-w Makefile.plugins
fi
## Terminated.
exit 0
# --------------------------------------------------------------------------
......@@ -7,15 +7,13 @@
CONTRIBUTING.md: .ignore
INSTALL.md: .ignore
Makefile: CEA_LGPL
Makefile.distrib: .ignore
README.md: .ignore
configure.js: .ignore
distrib.sh: .ignore
doc/pandoc/href.lua: .ignore
doc/pandoc/index.json: .ignore
doc/pandoc/template.html: .ignore
electron-webpack.json: .ignore
headers/header_spec.txt: .ignore
headers/register.sh: .ignore
package.json: .ignore
src/dome/.gitignore: .ignore
src/dome/CONTRIBUTING.md: .ignore
......
#!/bin/sh
case "$1" in
Makefile.distrib | *.json | src/dome/doc/* | */.eslintrc.js )
echo "$1: .ignore"
;;
*Make* | src/*/*.js* | src/*/*.ts* | src/*/*.ml*)
echo "$1: CEA_LGPL"
;;
*)
echo "$1: .ignore"
;;
esac
......@@ -13,12 +13,12 @@
},
"devDependencies": {
"@babel/cli": "",
"@babel/core": "^7.16.0",
"@babel/core": "^7.17.5",
"@babel/plugin-proposal-class-properties": "",
"@babel/plugin-proposal-object-rest-spread": "^7.16.0",
"@babel/plugin-proposal-object-rest-spread": "^7.17.3",
"@babel/plugin-transform-runtime": "",
"@babel/preset-env": "^7.16.4",
"@babel/preset-react": "^7.16.0",
"@babel/preset-env": "^7.16.11",
"@babel/preset-react": "^7.16.7",
"@babel/preset-typescript": "",
"@hot-loader/react-dom": "^16",
"@types/codemirror": "",
......@@ -35,6 +35,7 @@
"babel-loader": "^8.2.3",
"css-loader": "^5",
"electron": "^16",
"electron-builder": "^22.14.13",
"electron-devtools-installer": "^3.2.0",
"electron-webpack": "^2.8.2",
"eslint": "",
......@@ -57,7 +58,7 @@
"@fortawesome/fontawesome-free": "",
"@types/diff": "",
"@types/react-window": "",
"codemirror": "^5.64.0",
"codemirror": "^5.65.2",
"cytoscape": "",
"cytoscape-cola": "",
"cytoscape-cose-bilkent": "",
......@@ -67,7 +68,6 @@
"cytoscape-panzoom": "",
"cytoscape-popper": "",
"diff": "",
"electron-builder": "^22.14.5",
"immutable": "",
"lodash": "^4.17.21",
"react": "^16",
......
This diff is collapsed.
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment