{"push_id":1166971149,"size":2,"distinct_size":1,"ref":"refs/heads/build-autotools","head":"008e8968c05a5a56f67c08419330ba465c305997","before":"70388518dd96b4e3a02b587d8e493765e085628b","commits":[{"sha":"c28b55059168ba9f267b7bd5f4ddef7d7939dd82","author":{"name":"Ian Craggs","email":"2ac687ae7e3dcd17d9dec74d057e81111139c539@gmail.com"},"message":"Add and clean doc, update version number","distinct":false,"url":"https://api.github.com/repos/guilhermeferreira/paho.mqtt.c/commits/c28b55059168ba9f267b7bd5f4ddef7d7939dd82"},{"sha":"008e8968c05a5a56f67c08419330ba465c305997","author":{"name":"Guilherme Maciel Ferreira","email":"8790fc5b4e083a55c0c470b62e78342ad6e9669b@gmail.com"},"message":"Change build system from GNU Make to Autotools\n\n---------------------------------------------------------------------\n Advantages\n---------------------------------------------------------------------\n\n1. Choose whether to build static, dynamic or both kinds of libraries;\n\n2. Choose whether to build synchronous (MQTTClient), asynchronous\n   (MQTTAsync), or both types of libraries;\n\n3. Choose whether or not to build SSL-aware libraries;\n\n4. Choose whether or not to build documentation, test or samples;\n\n5. Link the samples statically with the library, so the library can\n   be profiled;\n\n6. Easier cross compilation;\n\n7. Automatically find the dependencies to link (pthread, libcrypto\n   and libssl);\n\n8. Automatic handling of portability issues. For example, library\n   naming differs accross OS.\n\n---------------------------------------------------------------------\n Build instructions\n---------------------------------------------------------------------\n\nThe first step is to run the bootstrap script:\n\n  $ ./bootstrap\n\nNext, in order to build only the static library:\n\n  $ ./configure --disable-shared --enable-static\n  $ make\n\nthe commands above build:\n\n  libpaho-mqtt3a.a\n  libpaho-mqtt3c.a\n\nOr, in order to build only the dynamic library:\n\n  $ ./configure --enable-shared --disable-static\n  $ make\n\nthe previous commands build:\n\n  libpaho-mqtt3a.so.1.0.3\n  libpaho-mqtt3c.so.1.0.3\n\nand their respective links and sonames.\n\nIn order to build static only and link the test samples to static,\nso it can be profiled, issue the following command:\n\n $ ./configure --enable-samples --disable-shared \\\n   CFLAGS=-pg LDFLAGS=-pg\n\nIn order to build the SSL-aware libraries, use the --with-ssl option:\n\n  $ ./configure --disable-shared --enable-static --with-ssl\n  $ make\n\nwhich build the synchronous and asynchronous secure versions:\n\n  libpaho-mqtt3a.a\n  libpaho-mqtt3as.a <- SSL synchronous\n  libpaho-mqtt3c.a\n  libpaho-mqtt3cs.a <- SSL asynchronous\n\nAlso, there is an option to enable/disable high level of warnings\n(--enable-peak-warnings).\n\n---------------------------------------------------------------------\n Remarks\n---------------------------------------------------------------------\n\nThe regular Make version is around 2.5 times faster than the Autotools\nversion. The overall time for Autotools include the time of bootstrap,\nconfigure and make. The regular Make time include only the make command.\n\nSuccessfully built on and for:\n- Ubuntu 10.04 (x86 32-bit) with gcc 4.4.3 and GNU libc 2.11.1;\n- Ubuntu 10.04 (x86 32-bit) with clang 1.1 and GNU libc 2.11.1;\n- Ubuntu 12.04 (x86 64-bit) with gcc 4.6.3 and GNU libc 2.15;\n- Ubuntu 12.04 (x86 64-bit) with clang 3.4 and GNU libc 2.15;\n- Fedora 23.10 (x86 64-bit) with gcc 5.3.1 and GNU libc 2.22;\n- Fedora 23.10 (x86 64-bit) with clang 3.7.0 and GNU libc 2.22;\n- FreeBSD 10.3 (AMD 64-bit) with gcc 4.8.5;\n- FreeBSD 10.3 (AMD 64-bit) with clang 3.4.1;\n\nSigned-off-by: Guilherme Maciel Ferreira <guilherme.maciel.ferreira@gmail.com>","distinct":true,"url":"https://api.github.com/repos/guilhermeferreira/paho.mqtt.c/commits/008e8968c05a5a56f67c08419330ba465c305997"}]}
{"actor":{"display_login":"guilhermeferreira"}}