This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, master has been updated via 93aa811ed014f3bf91add965e7f41e9de73f213c (commit) from f3905bf8173bfc407dba284aae52034195766f84 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 93aa811ed014f3bf91add965e7f41e9de73f213c Author: Stefan Schantl stefan.schantl@ipfire.org Date: Sat May 7 20:31:31 2011 +0200
libsatsolver: New package.
-----------------------------------------------------------------------
Summary of changes: config/rootfiles/packages/libsatsolver | 52 +++ lfs/{elinks => libsatsolver} | 44 ++- make.sh | 1 + .../libsatsolver-Build-only-libraries.patch | 26 ++ ...er-scripts-that-do-only-export-the-needed.patch | 439 ++++++++++++++++++++ ...e-libsatsolver-ext-a-versioned-shared-lib.patch | 94 +++++ 6 files changed, 639 insertions(+), 17 deletions(-) create mode 100644 config/rootfiles/packages/libsatsolver copy lfs/{elinks => libsatsolver} (71%) create mode 100644 src/patches/libsatsolver-Build-only-libraries.patch create mode 100644 src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch create mode 100644 src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch
Difference in files: diff --git a/config/rootfiles/packages/libsatsolver b/config/rootfiles/packages/libsatsolver new file mode 100644 index 0000000..212eeea --- /dev/null +++ b/config/rootfiles/packages/libsatsolver @@ -0,0 +1,52 @@ +#usr/include/satsolver +#usr/include/satsolver/bitmap.h +#usr/include/satsolver/chksum.h +#usr/include/satsolver/dirpool.h +#usr/include/satsolver/evr.h +#usr/include/satsolver/hash.h +#usr/include/satsolver/knownid.h +#usr/include/satsolver/md5.h +#usr/include/satsolver/policy.h +#usr/include/satsolver/pool.h +#usr/include/satsolver/pool_fileconflicts.h +#usr/include/satsolver/poolarch.h +#usr/include/satsolver/poolid.h +#usr/include/satsolver/pooltypes.h +#usr/include/satsolver/poolvendor.h +#usr/include/satsolver/problems.h +#usr/include/satsolver/queue.h +#usr/include/satsolver/repo.h +#usr/include/satsolver/repo_content.h +#usr/include/satsolver/repo_deb.h +#usr/include/satsolver/repo_deltainfoxml.h +#usr/include/satsolver/repo_helix.h +#usr/include/satsolver/repo_products.h +#usr/include/satsolver/repo_releasefile_products.h +#usr/include/satsolver/repo_repomdxml.h +#usr/include/satsolver/repo_rpmdb.h +#usr/include/satsolver/repo_rpmmd.h +#usr/include/satsolver/repo_solv.h +#usr/include/satsolver/repo_susetags.h +#usr/include/satsolver/repo_updateinfoxml.h +#usr/include/satsolver/repo_write.h +#usr/include/satsolver/repo_zyppdb.h +#usr/include/satsolver/repodata.h +#usr/include/satsolver/repopage.h +#usr/include/satsolver/rules.h +#usr/include/satsolver/sat_xfopen.h +#usr/include/satsolver/satversion.h +#usr/include/satsolver/sha1.h +#usr/include/satsolver/sha2.h +#usr/include/satsolver/solvable.h +#usr/include/satsolver/solver.h +#usr/include/satsolver/solverdebug.h +#usr/include/satsolver/strpool.h +#usr/include/satsolver/tools_util.h +#usr/include/satsolver/transaction.h +#usr/include/satsolver/util.h +usr/lib/libsatsolver.so +usr/lib/libsatsolver.so.0 +usr/lib/libsatsolver.so.0.16 +usr/lib/libsatsolverext.so +usr/lib/libsatsolverext.so.0 +usr/lib/libsatsolverext.so.0.16 diff --git a/lfs/libsatsolver b/lfs/libsatsolver new file mode 100644 index 0000000..619c477 --- /dev/null +++ b/lfs/libsatsolver @@ -0,0 +1,99 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 0.16.4 + +THISAPP = libsatsolver-$(VER) +DL_FILE = $(THISAPP).tar.bz2 +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = 563414330c29e9b49be0e43358185a78 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Build-only-libraries.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch + + # Who releases code with -Werror? + cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt + + # Make sure that libsatsolverext is linked properly to all needed + # libraries. + cd $(DIR_APP) && echo "TARGET_LINK_LIBRARIES(satsolverext satsolver $${EXPAT_LIBRARY} $${ZLIB_LIBRARY})" \ + >> ext/CMakeLists.txt + + # Remove the RPM stuff when we build with -DFEDORA=1 because we + # do not support RPM. + cd $(DIR_APP) && sed -e "s/DEBIAN/FEDORA/g" -i ext/CMakeLists.txt + + cd $(DIR_APP) && mkdir build + cd $(DIR_APP)/build && cmake .. -DFEDORA=1 \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=1 + cd $(DIR_APP)/build && make $(PARALELLISMFLAGS) + + cd $(DIR_APP)/build && make install + + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/make.sh b/make.sh index f572b93..b89c77a 100755 --- a/make.sh +++ b/make.sh @@ -689,6 +689,7 @@ buildipfire() { ipfiremake swig ipfiremake python-m2crypto ipfiremake crda + ipfiremake libsatsolver echo Build on $HOSTNAME > $BASEDIR/build/var/ipfire/firebuild cat /proc/version >> $BASEDIR/build/var/ipfire/firebuild echo >> $BASEDIR/build/var/ipfire/firebuild diff --git a/src/patches/libsatsolver-Build-only-libraries.patch b/src/patches/libsatsolver-Build-only-libraries.patch new file mode 100644 index 0000000..47e24e4 --- /dev/null +++ b/src/patches/libsatsolver-Build-only-libraries.patch @@ -0,0 +1,26 @@ +diff -Nur old/CMakeLists.txt new/CMakeLists.txt +--- old/CMakeLists.txt 2011-04-10 23:55:09.506257000 +0200 ++++ new/CMakeLists.txt 2011-04-10 23:46:30.612257002 +0200 +@@ -32,7 +32,7 @@ + INCLUDE( ${CMAKE_SOURCE_DIR}/VERSION.cmake ) + + FIND_PACKAGE(EXPAT REQUIRED) +-FIND_PACKAGE(Check REQUIRED) ++#FIND_PACKAGE(Check REQUIRED) + FIND_PACKAGE(ZLIB REQUIRED) + + IF ( FEDORA ) +@@ -190,10 +190,10 @@ + + ADD_SUBDIRECTORY(src) + ADD_SUBDIRECTORY(ext) +-ADD_SUBDIRECTORY(tools) +-ADD_SUBDIRECTORY(tests) +-ADD_SUBDIRECTORY(examples) +-ADD_SUBDIRECTORY(doc) ++#ADD_SUBDIRECTORY(tools) ++#ADD_SUBDIRECTORY(tests) ++#ADD_SUBDIRECTORY(examples) ++#ADD_SUBDIRECTORY(doc) + + MESSAGE(STATUS "version: ${VERSION}") diff --git a/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch b/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch new file mode 100644 index 0000000..5ba4fa2 --- /dev/null +++ b/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch @@ -0,0 +1,439 @@ +>From a42d7e17fa3e39a8306126c19f1b3b54f1fdd79e Mon Sep 17 00:00:00 2001 +From: Michael Tremer michael.tremer@ipfire.org +Date: Thu, 21 Apr 2011 16:40:11 +0200 +Subject: [PATCH] Create linker-scripts that do only export the needed symbols + of libsatsolver{,ext}. + +See these posts for reference: + http://lists.opensuse.org/zypp-devel/2011-04/msg00012.html + http://lists.opensuse.org/zypp-devel/2011-04/msg00014.html + +Signed-off-by: Michael Tremer michael.tremer@ipfire.org +--- + ext/CMakeLists.txt | 1 + + ext/libsatsolverext.ver | 25 ++++ + src/CMakeLists.txt | 1 + + src/libsatsolver.ver | 355 +++++++++++++++++++++++++++++++++++++++++++++++ + 4 files changed, 382 insertions(+), 0 deletions(-) + create mode 100644 ext/libsatsolverext.ver + create mode 100644 src/libsatsolver.ver + +diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt +index 68e1c3c..d51a43b 100644 +--- a/ext/CMakeLists.txt ++++ b/ext/CMakeLists.txt +@@ -21,6 +21,7 @@ SET(libsatsolverext_HEADERS + tools_util.h repo_deb.h sat_xfopen.h) + + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") ++SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/ext/libsatsolverext.ver") + + INSTALL(FILES ${libsatsolverext_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver") + INSTALL(TARGETS satsolverext LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) +diff --git a/ext/libsatsolverext.ver b/ext/libsatsolverext.ver +new file mode 100644 +index 0000000..4869d37 +--- /dev/null ++++ b/ext/libsatsolverext.ver +@@ -0,0 +1,25 @@ ++EXT1.0 { ++ global: ++ repo_add_code11_products; ++ repo_add_content; ++ repo_add_deb; ++ repo_add_debdb; ++ repo_add_debpackages; ++ repo_add_debs; ++ repo_add_deltainfoxml; ++ repo_add_helix; ++ repo_add_products; ++ repo_add_releasefile_products; ++ repo_add_repomdxml; ++ repo_add_rpmmd; ++ repo_add_susetags; ++ repo_add_updateinfoxml; ++ repo_add_zyppdb_products; ++ repodata_write; ++ repo_write; ++ repo_write_stdkeyfilter; ++ sat_xfopen; ++ sat_xfopen_fd; ++ local: ++ *; ++}; +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 6a14d10..b54d01d 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -20,6 +20,7 @@ SET(libsatsolver_HEADERS + chksum.h md5.h sha1.h sha2.h ${CMAKE_BINARY_DIR}/src/satversion.h) + + SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") ++SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/src/libsatsolver.ver") + + INSTALL(FILES ${libsatsolver_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver") + INSTALL(TARGETS satsolver LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) +diff --git a/src/libsatsolver.ver b/src/libsatsolver.ver +new file mode 100644 +index 0000000..dab3576 +--- /dev/null ++++ b/src/libsatsolver.ver +@@ -0,0 +1,355 @@ ++SAT1.0 { ++ global: ++ dataiterator_clonepos; ++ dataiterator_entersub; ++ dataiterator_free; ++ dataiterator_init; ++ dataiterator_init_clone; ++ dataiterator_jump_to_repo; ++ dataiterator_jump_to_solvid; ++ dataiterator_match; ++ dataiterator_prepend_keyname; ++ dataiterator_seek; ++ dataiterator_set_keyname; ++ dataiterator_set_match; ++ dataiterator_setpos; ++ dataiterator_setpos_parent; ++ dataiterator_set_search; ++ dataiterator_skip_attribute; ++ dataiterator_skip_repo; ++ dataiterator_skip_solvable; ++ dataiterator_step; ++ datamatcher_free; ++ datamatcher_init; ++ datamatcher_match; ++ data_read_idarray; ++ data_read_rel_idarray; ++ data_skip_key; ++ dep2str; ++ dirpool_add_dir; ++ dirpool_free; ++ dirpool_init; ++ dirpool_make_dirtraverse; ++ evrcmp; ++ evrmatch; ++ id2str; ++ map_free; ++ map_grow; ++ map_init; ++ map_init_clone; ++ policy_create_obsolete_index; ++ policy_filter_unwanted; ++ policy_findupdatepackages; ++ policy_illegal2str; ++ policy_illegal_archchange; ++ policy_illegal_vendorchange; ++ policy_is_illegal; ++ pool_add_fileconflicts_deps; ++ pool_addfileprovides; ++ pool_addfileprovides_ids; ++ pool_addrelproviders; ++ pool_add_solvable; ++ pool_add_solvable_block; ++ pool_alloctmpspace; ++ pool_arch2color_slow; ++ pool_bin2hex; ++ pool_calc_duchanges; ++ pool_calc_installsizechange; ++ pool_clear_pos; ++ pool_create; ++ pool_create_state_maps; ++ pool_createwhatprovides; ++ pool_debug; ++ pool_free; ++ pool_freeidhashes; ++ pool_free_solvable_block; ++ pool_freetmpspace; ++ pool_freewhatprovides; ++ pool_id2langid; ++ pool_job2str; ++ pool_lookup_bin_checksum; ++ pool_lookup_checksum; ++ pool_lookup_id; ++ pool_lookup_num; ++ pool_lookup_str; ++ pool_lookup_void; ++ pool_match_dep; ++ pool_match_nevr_rel; ++ pool_queuetowhatprovides; ++ pool_search; ++ pool_setarch; ++ pool_setarchpolicy; ++ pool_setdebuglevel; ++ pool_set_installed; ++ pool_set_languages; ++ pool_setvendorclasses; ++ pool_shrink_rels; ++ pool_shrink_strings; ++ pool_tmpappend; ++ pool_tmpjoin; ++ pool_trivial_installable; ++ pool_trivial_installable_noobsoletesmap; ++ pool_vendor2mask; ++ prune_best_arch_name_version; ++ prune_to_best_arch; ++ prune_to_best_version; ++ queue_alloc_one; ++ queue_alloc_one_head; ++ queue_delete; ++ queue_delete2; ++ queue_deleten; ++ queue_free; ++ queue_init; ++ queue_init_buffer; ++ queue_init_clone; ++ queue_insert; ++ queue_insert2; ++ queue_insertn; ++ rel2id; ++ repo_addid; ++ repo_addid_dep; ++ repo_add_poolstr_array; ++ repo_add_repodata; ++ repo_add_solv; ++ repo_add_solv_flags; ++ repo_create; ++ repodata_add_dirnumnum; ++ repodata_add_dirstr; ++ repodata_add_fixarray; ++ repodata_add_flexarray; ++ repodata_add_idarray; ++ repodata_add_poolstr_array; ++ repodata_chk2str; ++ repodata_create; ++ repodata_create_stubs; ++ repodata_delete; ++ repodata_delete_uninternalized; ++ repodata_dir2str; ++ repodata_disable_paging; ++ repodata_empty; ++ repodata_extend; ++ repodata_extend_block; ++ repodata_filelistfilter_matches; ++ repodata_free; ++ repodata_freedata; ++ repodata_free_schemahash; ++ repodata_globalize_id; ++ repodata_initdata; ++ repodata_internalize; ++ repodata_key2id; ++ repodata_localize_id; ++ repodata_lookup_bin_checksum; ++ repodata_lookup_id; ++ repodata_lookup_idarray; ++ repodata_lookup_num; ++ repodata_lookup_str; ++ repodata_lookup_type; ++ repodata_lookup_void; ++ repodata_merge_attrs; ++ repodata_merge_some_attrs; ++ repodata_new_handle; ++ repodata_schema2id; ++ repodata_search; ++ repodata_set_binary; ++ repodata_set_bin_checksum; ++ repodata_set_checksum; ++ repodata_set_constant; ++ repodata_set_constantid; ++ repodata_set_id; ++ repodata_set_idarray; ++ repodata_set_location; ++ repodata_set_num; ++ repodata_set_poolstr; ++ repodata_setpos_kv; ++ repodata_set_str; ++ repodata_set_void; ++ repodata_shrink; ++ repodata_str2dir; ++ repodata_stringify; ++ repo_disable_paging; ++ repo_empty; ++ repo_fix_conflicts; ++ repo_fix_supplements; ++ repo_free; ++ repo_freeallrepos; ++ repo_free_solvable_block; ++ repo_internalize; ++ repo_last_repodata; ++ repo_lookup_bin_checksum; ++ repo_lookup_checksum; ++ repo_lookup_id; ++ repo_lookup_idarray; ++ repo_lookup_num; ++ repo_lookup_str; ++ repo_lookup_type; ++ repo_lookup_void; ++ repo_matchvalue; ++ repopagestore_compress_page; ++ repopagestore_disable_paging; ++ repopagestore_free; ++ repopagestore_init; ++ repopagestore_load_page_range; ++ repopagestore_read_or_setup_pages; ++ repo_reserve_ids; ++ repo_search; ++ repo_set_id; ++ repo_set_num; ++ repo_set_poolstr; ++ repo_set_str; ++ repo_sidedata_create; ++ repo_sidedata_extend; ++ sat_bin2hex; ++ sat_calloc; ++ sat_chksum_add; ++ sat_chksum_create; ++ sat_chksum_create_from_bin; ++ sat_chksum_free; ++ sat_chksum_get; ++ sat_chksum_get_type; ++ sat_chksum_isfinished; ++ sat_chksum_str2type; ++ sat_chksum_type2str; ++ sat_dupappend; ++ sat_dupjoin; ++ sat_free; ++ sat_hex2bin; ++ sat_malloc; ++ sat_malloc2; ++ sat_MD5_Final; ++ sat_MD5_Init; ++ sat_MD5_Update; ++ sat_oom; ++ sat_realloc; ++ sat_realloc2; ++ sat_SHA1_Final; ++ sat_SHA1_Init; ++ sat_SHA1_Update; ++ sat_SHA256_Data; ++ sat_SHA256_End; ++ sat_SHA256_Final; ++ sat_SHA256_Init; ++ sat_SHA256_Update; ++ sat_SHA384_Data; ++ sat_SHA384_End; ++ sat_SHA384_Final; ++ sat_SHA384_Init; ++ sat_SHA384_Update; ++ sat_SHA512_Data; ++ sat_SHA512_End; ++ sat_SHA512_Final; ++ sat_SHA512_Init; ++ sat_SHA512_Update; ++ sat_sort; ++ sat_timems; ++ sat_version; ++ sat_version_major; ++ sat_version_minor; ++ sat_version_patch; ++ solvable2str; ++ solvable_get_location; ++ solvable_identical; ++ solvable_lookup_bin_checksum; ++ solvable_lookup_bool; ++ solvable_lookup_checksum; ++ solvable_lookup_id; ++ solvable_lookup_idarray; ++ solvable_lookup_num; ++ solvable_lookup_str; ++ solvable_lookup_str_lang; ++ solvable_lookup_str_poollang; ++ solvable_lookup_void; ++ solvable_selfprovidedep; ++ solvable_trivial_installable_map; ++ solvable_trivial_installable_queue; ++ solvable_trivial_installable_repo; ++ solver_addchoicerules; ++ solver_addduprules; ++ solver_addinfarchrules; ++ solver_addrpmrulesforsolvable; ++ solver_addrpmrulesforupdaters; ++ solver_addrpmrulesforweak; ++ solver_addrule; ++ solver_addupdaterule; ++ solver_allruleinfos; ++ solver_calc_duchanges; ++ solver_calc_installsizechange; ++ solver_calculate_noobsmap; ++ solver_create; ++ solver_create_decisions_obsoletesmap; ++ solver_createdupmaps; ++ solver_dep_installed; ++ solver_disablechoicerules; ++ solver_disablepolicyrules; ++ solver_disableproblem; ++ solver_enableproblem; ++ solver_findallproblemrules; ++ solver_findproblemrule; ++ solver_free; ++ solver_freedupmaps; ++ solver_next_problem; ++ solver_next_solution; ++ solver_next_solutionelement; ++ solver_prepare_solutions; ++ solver_printallsolutions; ++ solver_printcompleteprobleminfo; ++ solver_printdecisionq; ++ solver_printdecisions; ++ solver_printproblem; ++ solver_printprobleminfo; ++ solver_printproblemruleinfo; ++ solver_printrule; ++ solver_printruleclass; ++ solver_printruleelement; ++ solver_printsolution; ++ solver_printtransaction; ++ solver_printtrivial; ++ solver_printwatches; ++ solver_problem_count; ++ solver_problemruleinfo; ++ solver_problemruleinfo2str; ++ solver_reenablepolicyrules; ++ solver_reset; ++ solver_ruleinfo; ++ solver_run_sat; ++ solver_samerule; ++ solver_select2str; ++ solver_solution_count; ++ solver_solutionelement2str; ++ solver_solutionelement_count; ++ solver_solve; ++ solver_splitprovides; ++ solver_take_solution; ++ solver_take_solutionelement; ++ solver_trivial_installable; ++ solver_unifyrules; ++ str2id; ++ strn2id; ++ stringpool_clone; ++ stringpool_free; ++ stringpool_freehash; ++ stringpool_init; ++ stringpool_init_empty; ++ stringpool_shrink; ++ stringpool_str2id; ++ stringpool_strn2id; ++ transaction_add_obsoleted; ++ transaction_all_obs_pkgs; ++ transaction_calc_duchanges; ++ transaction_calc_installsizechange; ++ transaction_calculate; ++ transaction_check_order; ++ transaction_classify; ++ transaction_classify_pkgs; ++ transaction_free; ++ transaction_free_orderdata; ++ transaction_init; ++ transaction_init_clone; ++ transaction_installedresult; ++ transaction_obs_pkg; ++ transaction_order; ++ transaction_order_add_choices; ++ transaction_type; ++ vercmp; ++ local: ++ *; ++}; +-- +1.7.4.4 + diff --git a/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch b/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch new file mode 100644 index 0000000..449275c --- /dev/null +++ b/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch @@ -0,0 +1,94 @@ +>From 1f9659b55013f222046b9d161fd5a0f2fc399cb8 Mon Sep 17 00:00:00 2001 +From: Michael Tremer michael.tremer@ipfire.org +Date: Thu, 21 Apr 2011 12:48:41 +0200 +Subject: [PATCH] Make libsatsolver{,ext} a versioned shared lib. + +Most distributions only do accept shared libraries because of +relro and hardening stuff. + +Previously, libsatsolver was statically compiled because the ABI +was assumed to be changed from time to time but has now become +very stable. + +Signed-off-by: Michael Tremer michael.tremer@ipfire.org +--- + ext/CMakeLists.txt | 6 +++++- + src/CMakeLists.txt | 6 +++++- + tools/CMakeLists.txt | 12 ++++++------ + 3 files changed, 16 insertions(+), 8 deletions(-) + +diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt +index 8e71eee..68e1c3c 100644 +--- a/ext/CMakeLists.txt ++++ b/ext/CMakeLists.txt +@@ -8,7 +8,11 @@ SET(libsatsolverext_SRCS + ${libsatsolverext_SRCS} pool_fileconflicts.c repo_rpmdb.c) + ENDIF (NOT DEBIAN) + +-ADD_LIBRARY(satsolverext STATIC ${libsatsolverext_SRCS}) ++ADD_LIBRARY(satsolverext SHARED ${libsatsolverext_SRCS}) ++SET_TARGET_PROPERTIES(satsolverext PROPERTIES ++ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}" ++ SOVERSION "${LIBSATSOLVER_MAJOR}" ++) + + SET(libsatsolverext_HEADERS + pool_fileconflicts.h repo_content.h repo_deltainfoxml.h repo_helix.h repo_products.h +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 9bd0fde..6a14d10 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -6,7 +6,11 @@ SET(libsatsolver_SRCS + transaction.c rules.c problems.c + chksum.c md5.c sha1.c sha2.c satversion.c) + +-ADD_LIBRARY(satsolver STATIC ${libsatsolver_SRCS}) ++ADD_LIBRARY(satsolver SHARED ${libsatsolver_SRCS}) ++SET_TARGET_PROPERTIES(satsolver PROPERTIES ++ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}" ++ SOVERSION "${LIBSATSOLVER_MAJOR}" ++) + + SET(libsatsolver_HEADERS + bitmap.h evr.h hash.h policy.h poolarch.h poolvendor.h pool.h +diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt +index 79d4890..7696612 100644 +--- a/tools/CMakeLists.txt ++++ b/tools/CMakeLists.txt +@@ -20,19 +20,19 @@ ADD_EXECUTABLE(rpmmd2solv rpmmd2solv.c) + TARGET_LINK_LIBRARIES(rpmmd2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(helix2solv helix2solv.c) +-TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) ++TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(susetags2solv susetags2solv.c) +-TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${ZLIB_LIBRARY}) ++TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(updateinfoxml2solv updateinfoxml2solv.c) +-TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) ++TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(deltainfoxml2solv deltainfoxml2solv.c) +-TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) ++TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(repomdxml2solv repomdxml2solv.c) +-TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) ++TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + ADD_EXECUTABLE(installcheck installcheck.c) + TARGET_LINK_LIBRARIES(installcheck satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) +@@ -44,7 +44,7 @@ ADD_EXECUTABLE(dumpsolv dumpsolv.c ) + TARGET_LINK_LIBRARIES(dumpsolv satsolver) + + ADD_EXECUTABLE(mergesolv mergesolv.c ) +-TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver) ++TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) + + install(TARGETS + mergesolv +-- +1.7.4.4 +
hooks/post-receive -- IPFire 2.x development tree