Create curl precompiled binaries with Macports
Ensure that the build environment is ready
Step 1 - Xcode install
$ xcode-select --install
Step 2 - Xcode license agreement
$ sudo xcodebuild
Build the current version of a port
Step 1 - Install the build environment, that is Macport
$ cd ~/Downloads $ curl -L http://downloads.sourceforge.net/project/macports/MacPorts/2.3.4/MacPorts-2.3.4.tar.gz -o ~/Downloads/MacPorts.tar.gz $ tar xfv MacPorts.tar.gz $ cd MacPorts-2.3.4 $ export PATH=/bin:/sbin:/usr/bin:/usr/sbin $ export MP_PREFIX=/opt/uib/curl $ ./configure --prefix=$MP_PREFIX --with-applications-dir=$MP_PREFIX/Applications $ make $ sudo make install $ export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/uib/curl/bin $ sudo sed -ie 's/#startupitem_install[[:blank:]]yes/startupitem_install no/g' $MP_PREFIX/etc/macports/macports.conf
ensure that you have the following in the config file
$ cat $MP_PREFIX/etc/macports/macports.conf | grep startupitem_install startupitem_install no
Step 2 - Install auxiliary tools
Download "Auxiliary Tools for Xcode - Late July 2012" and install Packagemaker from the bundle.
Step 3 - Build the port
$ sudo port -v selfupdate $ sudo port -d mpkg curl
You will now find the distributable .mpkg file in:
/opt/uib/curl/var/macports/build/_opt_curl_var_macports_sources_rsync.macports.org_release_tarballs_ports_net_curl/curl/work/curl-7.39.0.mpkg
Build an older version of a port
Step 1 - Locate and download the portfile for the version we want to install
Portfiles can be found at: https://trac.macports.org/browser/trunk/dports
curl is located in the net/curl folder, so enter it by clicking on it.
- Click on the revision log to see what commit we want to use as our portfile.
- Download the "Original format" of the files and save them somewhere on your disk. If there is a "files" folder, grab the files inside that too.
- If you dont want to keep the portfiles after you have installed the curl version, you can save them in your tmp folder, i.e /tmp/curl and /tmp/curl/files. Its important that the port process can access the files, so don't hide them in your homefolder where only you can access them.
Step 2 - Build your port
Export path to the correct version of port:
$ export PATH=/bin:/sbin:/usr/bin:/usr/sbin:/opt/uib/curl/bin
Enter the folder where the portfile(s) are located:
$ cd /tmp/curl
Make the port:
$ sudo port -d mpkg -F Portfile
You will now fint the distributable .mpkg file in:
/opt/uib/curl/var/macports/build/_private_tmp_curl_7_30/curl/work/curl-7.30.0.mpkg