Skip to content

📦 Package binary distributions of mulle-clang

License

Notifications You must be signed in to change notification settings

mulle-cc/mulle-clang-cpack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

66 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CreatE a mulle-clang redistributable from binaries using CPack

These scripts eraps mulle-clang files in /opt into an install package. The creation of said files was done by previous step not covered by this project (most likely by a cmake-ninja.<platform> script found in mulle-clang-project/clang/bin))

As a bonus a symbolic link is also generated and packaged.

Create a fresh debian VM (if needed)

Here we are installing into a fresh "buster" VM of the same name:

scp ~/.ssh/id_rsa_vm.pub buster:
ssh buster
mkdir .ssh
mv id_rsa_vm.pub .ssh/authorized_keys
chmod 400 .ssh/authorized_keys
chmod 700 .ssh

Add buster to /etc/hosts on host. Add buster to ~/.ssh/config on host.

Prerequisites

  • sudo
  • git

On debian, install git and get sudo happening

su
apt-get install git sudo
/sbin/usermod -aG sudo <loginname> # or your login
sudo /sbin/visudo
# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) NOPASSWD: ALL
# log off now, so sudo group change takes effect

Install cmake and such things:

wget 'https://raw.githubusercontent.com/mulle-cc/mulle-clang-project/mulle/14.0.6/clang/bin/install-prerequisites'
chmod 755 install-prerequisites
./install-prerequisites --no-lldb

One script does all

On the VM Host (!) run

VERSION=17.0.6.0 RC= ./create-deb "bullseye"

Semi-manual Usage

On the VM guest run

VERSION=17.0.6.0 package-build

Manual Usage

Unix

Get git happening and clone cpack-mulle-clang:

sudo apt-get install git sudo
git clone https://github.com/mulle-cc/mulle-clang-cpack.git

Build mulle-clang into a local opt folder:

Set VERSION appropriately:

VERSION="17.0.6.0"
RC="" # e.g. -RC1
mkdir mono
cd mono
wget -O - "https://github.com/mulle-cc/mulle-clang-project/archive/${VERSION}${RC}.tar.gz" | tar xfz -
mv "mulle-clang-project-${VERSION}${RC}" mulle-clang-project
mkdir opt/mulle-clang-project
sudo ln -s "$PWD/opt/mulle-clang-project" "/opt/mulle-clang-project"

Build normally

PREFIX="/opt" NAME="${VERSION}" ./mulle-clang-project/clang/bin/cmake-ninja.linux

Create .deb package and upload:

cp ../cpack-mulle-clang/* .
chmod 755 generate-package
./generate-package

macOS - brew

cp mulle-clang-project.rb /usr/local/Homebrew/Library/Taps/mulle-objc/homebrew-software/Formula/
brew uninstall mulle-objc/software/mulle-clang-project
brew install --formula --build-bottle mulle-clang-project.rb
brew bottle mulle-objc/software/mulle-clang-project

Releases

No releases published

Packages

No packages published